题解 | 计算一元二次方程

计算一元二次方程

https://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26

#include <stdio.h>
#include<math.h>
int main() {
    float a,b,c;
    while((scanf("%f%f%f",&a,&b,&c))!=EOF)
    {
            if(a==0)
            printf("Not quadratic equation\n");
            else if(a!=0)
            {
            float d=b*b-4*a*c;
            if(d==0)
            {
            if((-b+sqrt(d))/2/a==0)
            printf("x1=x2=0.00\n");
            else
            printf("x1=x2=%.2f\n",(-b+sqrt(d))/2/a);
            }
            else if(d>0)
            printf("x1=%.2f;x2=%.2f\n",(-b-sqrt(d))/2/a,(-b+sqrt(d))/2/a);
            else if(d<0)
            printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n",-b/(2*a),sqrt(-d)/(2*a),-b/(2*a),sqrt(-d)/(2*a));
            }
        
    }


    return 0;
}

该题使用while循环来解决多组系数输入问题,每一组数据都是一个循环。当该组数据判断结束时则进入下一组数据循环。

循环内部都是一些简单的条件判断。主要是解决多组数据输入问题!

全部评论

相关推荐

牛客51274894...:照片认真的吗,找个专门拍证件照的几十块钱整端正点吧,要不就别加照片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务