题解 | 计算一元二次方程

计算一元二次方程

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");
        else{
            float n=b*b-4*a*c;
            float x1,x2,m1,m2;
            if(n==0){
                x1=(-b+sqrt(n))/(2*a);
                x2=x1;
                if(x1==0){
                    x1=0.00;
                    x2=0.00;
                    }
                printf("x1=x2=%.2f\n",x1);}
            else if(n>0){
                x1=(-b-sqrt(n))/(2*a);
                x2=(-b+sqrt(n))/(2*a);
                printf("x1=%.2f;x2=%.2f\n",x1,x2);
            }
            else if(n<0){
                m1=-b/(2*a);
                m2=sqrt(-n)/(2*a);
                printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n",m1,m2,m1,m2);
            }
                        
        };
    }
    return 0;
}

全部评论

相关推荐

04-03 12:09
東京大学 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务