如果(b=0)
Printf("方程無解");
其他
x =-c/b;
printf("x=%.2f\n ",x);
更改為:
如果(a=0)
{
如果(b=0)
Printf("方程無解");
其他
x =-c/b;
printf("x=%.2f\n ",x);
}
否則,else與第壹條if、if和else語句成對出現,然後執行下壹條語句。如果後續語句不止壹個,就需要花括號,下面的else也壹樣。
變更後,程序如下:
# include & ltstdio.h & gt
# include & ltmath.h & gt
void main()
{
浮點a,b,c,r,p,d,x1,x2,x;
scanf("%f,%f,%f ",& amp壹,& ampb & amp;c);
如果(a=0)
{
如果(b=0)
Printf("方程無解");
其他
x =-c/b;
printf("x=%.2f\n ",x);
}
其他
{ d = b * b-4 * c * a;
r =-b/(2 * a);
p = sqrt(ABS(d)/(2 * a));
if(d & gt;0)
{ x 1 = r+p;
x2 = r-p;
printf(" x1 = % . 2f \ nx2 = % . 2f \ n ",x 1,x2);}
其他
如果(d=0)
{ x 1 = x2 = r;
printf("x1=x2=%.2f\n ",x 1);}
其他
{ printf("%.2f+%.2fi\n ",r,p);
printf("%.2f-%.2fi\n ",r,p);}
}
}