C语言,求一元二次方程的解

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:26:08
C语言,求一元二次方程ax^2+bx+c=0的解.不知道怎么下手,留下思路也可以,麻烦了。。。。

/*刚才有一点问题,现在改好了*/

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
float a = 1,b = 0, c= 0;
cout<<"a:";
cin>>a;
cout<<"b:";
cin>>b;
cout<<"c:";
cin>>c;
if(a==0)
return 0;
float x1,x2 = 0;
float i;
i = b*b-4*a*c;
if(i<0)
{
cout<<"方程无实根!"<<endl;
return 0;
}
if(i==0)
{
x1 = x2 = (-b)/(2*a);
cout<<"方程有两个相等实数根:"<<endl;
}
if(i>0)
{
x1 = (-b+sqrt(i))/(2*a);
x2 = (-b-sqrt(i))/(2*a);
cout<<"方程有两个不相等实数根:"<<endl;
}
cout <<"X1 = "<<x1<<"\tX2 = "<<x2<<endl;
return 0;
}