请问那错了?(C语言)

来源:百度知道 编辑:UC知道 时间:2024/09/24 03:59:44
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,disc,x,x1,x2,p,q;
printf("please enter the coefficients a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
disc=b*b-4*a*c;
if(disc<0);
printf("无解!\n");
else
{
if (a==0)
{
x=-c/b;
printf("x=%5.2f\n",x);
}
else
{
p=-b/(2*a);
q=sqrt(disc)/(2*a);
x1=p+q;
x2=p-q;
printf("x1=%5.2f,x2=%5.2f\n",x1,x2);
}
}
}

if(disc<0);//此处多了个分号去掉

if后面多了;

if(disc<0);
这个if后面多了一个分号。
运行的时候它提示是arning C4390: ';'
然后指向的是printf("无解!\n");这句对吧
一般这种情况都是它前面某句话有问题,你可以从它标记的这句话倒着回去找,很容易就找到了,而且它说的是';',所以你只用注意分号的问题就是了。