帮我分析下C语言一元二次方程问题#includemain(){float a,b,c,p,x1,x2;scanf("%f%f%f",&a,&b,&c);p=sqrt(b*b-4*a*c);if(p>=0){{x1=(-b+p)/(2*a), x2=(-b-p)/(2*a);}printf("%f\t%f\n",x1,x2);}else printf("wu jie\n");}为什么我输入个2 5 8运

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 12:09:59
帮我分析下C语言一元二次方程问题#includemain(){float a,b,c,p,x1,x2;scanf(=0){{x1=(-b+p)/(2*a), x2=(-b-p)/(2*a);}printf("%f\t%f\n",x1,x2);}else printf("wu jie\n");}为什么我输入个2 5 8运" />

帮我分析下C语言一元二次方程问题#includemain(){float a,b,c,p,x1,x2;scanf("%f%f%f",&a,&b,&c);p=sqrt(b*b-4*a*c);if(p>=0){{x1=(-b+p)/(2*a), x2=(-b-p)/(2*a);}printf("%f\t%f\n",x1,x2);}else printf("wu jie\n");}为什么我输入个2 5 8运
帮我分析下C语言一元二次方程问题
#include
main()
{
float a,b,c,p,x1,x2;
scanf("%f%f%f",&a,&b,&c);
p=sqrt(b*b-4*a*c);
if(p>=0)
{
{x1=(-b+p)/(2*a),
x2=(-b-p)/(2*a);}
printf("%f\t%f\n",x1,x2);
}
else printf("wu jie\n");
}
为什么我输入个2 5 8运行的结果是:sqrt DOMAIN error
7.000000 -9.500000
如果我在最前边加入#include
同样输入2 5 8运行的结果是:wu jie

帮我分析下C语言一元二次方程问题#includemain(){float a,b,c,p,x1,x2;scanf("%f%f%f",&a,&b,&c);p=sqrt(b*b-4*a*c);if(p>=0){{x1=(-b+p)/(2*a), x2=(-b-p)/(2*a);}printf("%f\t%f\n",x1,x2);}else printf("wu jie\n");}为什么我输入个2 5 8运
#include是个库文件,你的代码中用到sqrt函数是在库文件中定义的,如果不加库文件,一般sqrt就不是关键字的,所以编辑器一般会报错,如果没有报错,结果也一定有错.不过也许其它的头文件中包含了这个库文件,就不会报错.你的编辑器没有报错,所以和这个头文件就没什么关系,也就是说#incldue加不加都无所谓了.
如果输入2 5 8,则p的值就无意义,那么系统就随意赋值了,具体怎么出错的,是机器内部计算环节的问题,可以说此时p的值是乱码,所以有了错误的结果.