#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c,d,x,x1,x2;
scanf("%lf %lf %lf",&a,&b,&c);
d=b*b-4*a*c;
if(a==0)
{
if(b!=0)
{
if((-c)/b!=-0) printf("x = %g",(-c)/b);
else if((-c)/b==-0) printf("x = 0");
else printf("x = %g",(-c)/b);
}
else if(b==0&&c!=0) printf("无解");
else if(b==0&&c==0) printf("无穷多解");
}
else if(a!=0)
{
if(d>=0)
{
x1=(-b+sqrt(d))/(2*a);x2=(-b-sqrt(d))/(2*a);
if(x1==x2)
{
x1=(-b)/(2*a);
if(x1==0) printf("x1 = x2 = 0");
else printf("x1 = x2 = %g",x1);
}
else if(x1!=x2)
{
if(x1==0) printf("x1 = 0, x2 = %g",x2);
else if(x2==0) printf("x1 = %g, x2 = 0",x1);
else printf("x1 = %g, x2 = %g",x1,x2);
}
}
else if(d<0)
{
x1=(-b)/(2*a); x2=fabs(sqrt(-d)/(2*a));
if(x1==0)
{
printf("x1 = %g+%gi, x2 = %g-%gi",0,x2,0,x2);
}
else printf("x1 = %g+%gi, x2 = %g-%gi",x1,x2,x1,x2);
}
}
return 0;
}
最后那个怎么做出来都是x1=0.2, x2=0.2