#include<stdio.h>
#include<math.h>
int main()
{
float x1,x2,,a,b,c
float deta
scanf("%f,%f,%f",&a,&b,&c)
deta=b*b-4*a*c
if(deta<0)
{
printf("方程无解")
}
else
{
x1=(-b+sqrt(deta))/(2*a)
x2=(-b-sqrt(deta))/(2*a)
printf("x1=%f,x2=%f",x1,c2)
}
return 0
}
你的if语句那的括号有问题
#include<stdio.h>#include<math.h>
int main(){
double a,b,c,d,x1,x2
scanf("%f%f%f",&a,&b,&c)
if(a==0){
if(b==0){
if(c==0)
printf("该式为恒等式\n")
else
printf("该式不成立,请重新输入a,b,c\n")
}else{
x1=c/b
printf("x1=x2=%f\n",x1)
}else
d=b*b-4*a*c
if(d<0){
d=-d
x1=(-b+sqrt(d))/(2*a)
x2=(-b-sqrt(d))/(2*a)
printf("x1=%f,x2=%f,虚根\n",x1,x2)
}else{
x1=(-b+sqrt(d))/(2*a)
x2=(-b-sqrt(d))/(2*a)
printf("x1=%f,x2=%f\n",x1,x2)
}
return 0
}