判断ax^2+bx+c=0方程有几个解,如果有解则解出.系数a,b,c由键盘输入.我的编程如下#include main(){float a,b,c,x1,x2,p;scanf("%f%f%f",&a,&b,&c);p=b*b-4*a*c;if (p>=0)p=sqrt(b*b-4*a*c);if (p>0) { x1=(-b-p)/2*a;x2=(-b-p)/2*a;printf("
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/07 20:51:24
判断ax^2+bx+c=0方程有几个解,如果有解则解出.系数a,b,c由键盘输入.我的编程如下#include main(){float a,b,c,x1,x2,p;scanf("%f%f%f",&a,&b,&c);p=b*b-4*a*c;if (p>=0)p=sqrt(b*b-4*a*c);if (p>0) { x1=(-b-p)/2*a;x2=(-b-p)/2*a;printf("
判断ax^2+bx+c=0方程有几个解,如果有解则解出.系数a,b,c由键盘输入.
我的编程如下
#include
main()
{
float a,b,c,x1,x2,p;
scanf("%f%f%f",&a,&b,&c);
p=b*b-4*a*c;
if (p>=0)
p=sqrt(b*b-4*a*c);
if (p>0)
{
x1=(-b-p)/2*a;
x2=(-b-p)/2*a;
printf("x1=%.2f,x2=%.2f",x1,x2);
else x1=-b/2*a;
printf("x1=x2=%.2f",x1);
}
else printf("No answer");
}
为何程序说我的第一个else是Midplaced else in function main?
判断ax^2+bx+c=0方程有几个解,如果有解则解出.系数a,b,c由键盘输入.我的编程如下#include main(){float a,b,c,x1,x2,p;scanf("%f%f%f",&a,&b,&c);p=b*b-4*a*c;if (p>=0)p=sqrt(b*b-4*a*c);if (p>0) { x1=(-b-p)/2*a;x2=(-b-p)/2*a;printf("
修改之后的代码如下:
#include
main()
{
float a,b,c,x1,x2,p;
scanf("%f%f%f",&a,&b,&c);
p=b*b-4*a*c;
if (p>=0)
{
p=sqrt(b*b-4*a*c);
if (p>0)
{
x1=(-b-p)/2*a;
x2=(-b-p)/2*a;
printf("x1=%.2f,x2=%.2f",x1,x2);
}
else x1=-b/2*a;
printf("x1=x2=%.2f",x1);
}
else printf("No answer");
}
你的第一个else是在if的里面,所以会出现你所描述的错误.建议你在编程的时候,注意格式的标准化,减少错误的发生.