求ax^2+bx+c=0方程的根。a,b,c由键盘输入,设b^2-4ac>0

2025-01-05 14:16:48
推荐回答(2个)
回答1:

如下:

#include

#include

disc=b*b-4*a*c;
p=-b/(2.0*a);

q=sqrt(disc)/(2.0*a);
x1=p+q;

x2=p-q;

printf("x1=%7.2f\nx2=%7.2f\n",x1,x2);
return 0。


扩展资料:

1、去分母:方程两边同时乘各分母的最小公倍数。

2、去括号:一般先去小括号,再去中括号,最后去大括号。但顺序有时可依据情况而定使计算简便。可根据乘法分配律。

3、移项:把方程中含有未知数的项移到方程的另一边,其余各项移到方程的另一边移项时别忘了要变号。(一般都是这样:(比方)从 5x=4x+8 得到 5x - 4x=8 ;把未知数移到一起!

4、合并同类项:将原方程化为ax=b(a≠0)的形式。

5、化系数为一:方程两边同时除以未知数的系数。

6、得出方程的解。

回答2:

用float型就可以了,具体原因待查。

#include
#include
int main()
{
float a,b,c,disc,x1,x2,p,q;
disc=0;
scanf("%f%f%f",&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;
x2=p-q;
printf("x1=%7.2f\nx2=%7.2f\n",x1,x2);
return 0;
}