gddhww 2022-03-29 11:38 采纳率: 100%
浏览 14
已结题

求解一元二次方程输出不对,求解答

C语言如下代码输出老是如图所示,不知道怎么更改,输出不是数值。

img

img

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2022-03-29 11:51
    关注

    看着没啥毛病啊,确定是代码保存后编译运行的结果么

    int main()
    {
        float a,b,c;
        scanf("%f %f %f",&a,&b,&c);
        float d  =b*b - 4*a*c;
        if(d>0)
        {
            float x1 = (-b+sqrt(d))/(2*a);
            float x2 = (-b-sqrt(d))/(2*a);
            printf("x1=%0.3f,x2=%0.3f\n",x1,x2);
        }
        else if(d==0)
        {
            float x1= -b/(2*a);
            float x2=x1;
            printf("x1=%0.3f,x2=%.3f\n",x1,x2);
        }
        else
            printf("无根");
        return 0;
    }
    
    

    测试了一下,没毛病啊

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月29日
  • 创建了问题 3月29日