C语言求二元方程解,关于if-else;

2024-12-29 16:12:45
推荐回答(1个)
回答1:

如果要用else 结构, 那么必须从==0开始就用

只在注释行改else 那么当<0的时候也会执行else

可以改成

if(b*b-4*a*c<0)
    printf("no\n");
else if((b*b-4*a*c)==0)
    printf("%.2lf\n",-b/(2*a)) ;
else
{ //这里的if改成else为什么通不过
    x1 = (-b-sqrt(b*b-4*a*c))/(2*a);
    x2 = (-b+sqrt(b*b-4*a*c))/(2*a);
    printf("%.2lf %.2lf\n",x2,x1);
}