为什么运行结果是这样呢?求方程ax2+bx+c=0的根
# include <stdio.h># include <math.h>
int main(void)
{
float a, b, c, disc, x1, x2, p, q;
scanf("a=%f,b=%f,c=%f", &a, &b, &c);
disc=(b*b)-(4*a*c);
p=-b/(2*a);
q=sqrt(disc)/(2*a);
x1=p+q;
x2=p-q;
printf("x1=%5.2f\nx2=%5.2f\n",x1, x2);
return 0;
}
运行结果为什么是这样:当输入1,3,2时
x1=-1.#J
x2=-1.#J
Press any key to continue
不是我预定的结果,我预定的结果是:
x1=-1.0
x2=-2.0
Press any key to continue
为什么会这样的结果?