BEST_ZRH 2017-10-02 06:49 采纳率: 0%
浏览 1000

c编程 一元二次方程求根的问题,可以运行但是结果不对,想知道为什么,刚刚开始学

#include #include
int main()
{
int a,b,c; double d,e,f;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
printf("c=");
scanf("%d",&c);
d=b*b-4*a*c;
if(d<0)
printf("无解");
else {
e=(-b+sqrt(d))/(2*a);
f=(-b-sqrt(d))/(2*a);

if(d=0)
printf("x1=x2=%f",e);
else
printf("x1=%f\tx2=%f",e,f);
}
}

  • 写回答

4条回答 默认 最新

  • 叶子一哥 2017-10-02 07:41
    关注

    if (d==0)
    {
    x1=(-b)/(2*a);
    printf("x1=%f\n",x1);
    }
    if (d>0)
    {
    x1=(-b+sqrt(d))/(2*a);
    x2=(-b-sqrt(d))/(2*a);
    printf("x1=%f,x2=%f\n",x1,x2);}
    }
    这个试试

    评论

报告相同问题?