#include <stdio.h>
#include <math.h>
int main()
{
double a,b,c,delta,x,x1,x2,x11,x12,m,n;
printf("本程序将为您计算一元二次方程的根,请您先将该方程化为一般式,形如:\n a*x*x+b*x+c=0\n 并输入所对应的a,b,c的值。\n");
scanf("%lf%lf%lf",&a,&b,&c);
delta=b*b-4*a*c;
if (a==0)
{
x=-c/b;
printf("您输入的为一元一次方程,其解为%g",x);
}
else
if (delta>0)
{
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf("您输入的一元二次方程有两实根,其解分别为%g和%g",x1,x2);
}
else
if (delta<0)
{
m=-b/(2*a);
n=sqrt(fabs(delta))/(2*a);
printf("您输入的一元二次方程有两共轭复根,其解分别为%g+%gi和%g-%gi",m,n,m,n);
}
else
{
m=-b/(2*a);
printf("您输入的一元二次方程有两相同实根,其解为%g",m);
}
printf("\n");
return 0;
}