#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,x1,x2,qggs1,qggs2,delta,real,image;
printf("输入方程系数的值:");
scanf("%.2f%.2f%.2f",&a,&b,&c);
qggs1=-b/(2.0*a);
qggs2=sqrt(delta)/(2.0*a);
delta=b*b-4*a*c;
if(a==0)
printf("不是一元二次方程,a不能等于0");
else if (delta>=0)
{
x1=qggs1+qggs2;
x2=qggs1-qggs2;
printf("x1=.2%f\nx2=.2%f\n",x1,x2);
}
else
{
real=qggs1;
image=qggs2;
printf("%.2f+%.2fi\n",real,image);
printf("%.2f-%.2fi\n",real,image);
}
return 0;
}
printf("x1=.2%f\nx2=.2%f\n",x1,x2);把.2放在%后面,
scanf("%.2f%.2f%.2f",&a,&b,&c);把里面的.2去掉,输入直接加类型就可以了
把float改成double;
还有就是如果是delta是负数,开根是算不出来,所以else里面要加上
delta=4ac-bb;
qggs2=sqrt(delta)/(2.0a);