请教各位大虾,小弟刚学c语言不久,这样写的程序求方程的两根老是求不对,帮忙指教一下

来源:百度知道 编辑:UC知道 时间:2024/06/21 19:17:22

#include <stdio.h>
#include <math.h>
int main()
{ float a,b,c;
scanf("%f%f%f",a,b,c);
printf("x1=%f,x2=%f",(-b+sqrt(b*b-4ac))/(2*a),(-b-sqrt(b*b-4ac))/(2*a));
return 0;
}

#include <stdio.h>
#include <math.h>
int main()
{ float a,b,c;
scanf("%f%f%f",a,b,c);
printf("x1=%f,x2=%f",(-b+sqrt(b*b-4ac))/(2*a),(-b-sqrt(b*b-4ac))/(2*a));
return 0;
}

看到你的程序 就行了嘛

#include <stdio.h>
#include <math.h>
int main()
{ float a,b,c;
scanf("%f%f%f",&a,&b,&c);
printf("x1=%f,x2=%f",(-b+sqrt(b*b-4*a*c))/(2*a),(-b-sqrt(b*b-4*a*c))/(2*a));
return 0;
}

首先 你的scanf 中要用 &a,&b,&c .而不是a,b,c;
其次,4ac的表达是错的 正确的应该是4*a*c;
这样就行了!!我运行过了 。

只要注意变量用实数型的就OK了