一元二次方程求根C语言代码

#include<stdio.h>
int main()
{
float a,b,c;
scanf("a=%f/nb=%f/nc=%f/n",&a,&b,&c);
int m;
m=b*b-4*a*c;
printf("x=%d/n",x);
return(0);
}
我想写的是 输入 abc的值 求出对应的 X 的值、 首先不晓得C里面根号咋个弄 其次。 光是这个求△得程序 我构建时没错误。但是运行后 每次m都是0/n 求解答 谢谢
printf 下的 x改成m 打错了

#include <stdio.h>
#include <math.h>
void main()
{float a,b,c,disc,x1,x2,realpart,imagpart;
scanf("%f,%f,%f",&a,&b,&c);/*输入abc值*/
disc=b*b-4*a*c;/*判断△是不是大小*/
if(fabs(disc)<=0.0001) printf("有两个相等的跟:%8.4f\n",-b/(2*a));
else if(disc>0.0001)
{x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
printf("有两个不相等的跟:%8.4f和%8.4f\n",x1,x2);
}
else
{realpart=-b/(2*a);
imagpart=sqrt(-disc)/(2*a);
printf("该方程无解:\n");
printf("%8.4f+%8.4fi\n",realpart,imagpart);
printf("%8.4f-%8.4fi\n",realpart,imagpart);
}

sqrt()是数学函数,你要导入这个函数库#include <math.h>,它是求跟号的。
printf("x=%d/n",m);你定义的m是整型变量,而abc你定义的是浮点型,程序运行的时候无法将浮点型转换成整型。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-09
#include "math.h"
如:9的平方根的代码:sqrt (9)值是:3
你的代码中,m定义的是整型变量。而它的赋值符右边是单精度运算。
第2个回答  2011-09-09
double m;
平方根函数:sqrt()
第3个回答  2011-09-09
/n改成\n。。。
相似回答