关于else的问题。。。。。。
#include <stdio.h>
#include <math.h>
main()
{
int a,b,c;
float x1,x2;
if
(b*b - 4*a*c >= 0);
{
printf("input a,b,c:");
scanf("&lf,&lf,&lf,a,b,c");
x1 = (sqrt(b*b-4*a*c)-b)/2*a;
x2 = (-sqrt(b*b-4*a*c)-b)/2*a;
printf("x1 = f%,x2 = f%\n",x1,x2);
}
else
{
printf("no solution");
}
}
运行错误,怎么改。。。
[解决办法]
- C/C++ code
#include <stdio.h>#include <math.h>main() { int a=3,b=4,c=5; float x1,x2; if(b*b - 4*a*c >= 0) { printf("input a,b,c:"); scanf("&lf,&lf,&lf,a,b,c"); x1 = (sqrt(b*b-4*a*c)-b)/2*a; x2 = (-sqrt(b*b-4*a*c)-b)/2*a; printf("x1 = f%,x2 = f%\n",x1,x2); } else { printf("no solution"); } }
[解决办法]
- C/C++ code
#include <stdio.h>#include <math.h>main() { int a,b,c; float x1,x2; if(b*b - 4*a*c >= 0) { printf("input a,b,c:"); scanf("lf,lf,lf,&a,&b,&c"); x1 = (sqrt(b*b-4*a*c)-b)/2*a; x2 = (-sqrt(b*b-4*a*c)-b)/2*a; printf("x1 = f%,x2 = f%\n",x1,x2); } else { printf("no solution"); } }
[解决办法]
- C/C++ code
#include <stdio.h>#include <math.h>main() { int a,b,c; float x1,x2; printf("input a,b,c:"); scanf("%d,%d,%d",&a,&b,&c); if(b*b - 4*a*c >= 0) { x1 = (sqrt(b*b-4*a*c)-b)/2*a; x2 = (-sqrt(b*b-4*a*c)-b)/2*a; printf("x1 = %.2f,x2 = %.2f\n",x1,x2); } else { printf("no solution"); } }
[解决办法]
scanf函数目测用错了,此外,scanf应在if前面