题解 | #计算一元二次方程#

计算一元二次方程

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

#include <stdio.h>
#include<math.h>
#include <string.h>
int main() {
    float a,b,c,m,x1,x2,p,x;
    while(scanf("%f %f %f\n",&a,&b,&c)==3)
    {
        m=b*b-4*a*c;
        if(a==0)
        printf("Not quadratic equation\n");
        if(a!=0)
        {
            if(m==0)
            {
                p=-b/(2.0*a);
                if(p==-.00)//注意这个+0和-0
                p=0.00;
                printf("x1=x2=%.2f\n",p);
            }
            if(m>0)
            {
                x1=(-b-sqrt(m))/(2.0*a);
                x2=(-b+sqrt(m))/(2.0*a);
                printf("x1=%.2f;x2=%.2f\n",x1,x2);
            }
            if(m<0)
            {   
                p=-b/(2.0*a);
                if(p==-.00)
                p=0.00;
                x=sqrt(-m)/(2.0*a);
                printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi",p,x,p,x);
            }
        }
    }    
    return 0;
}

#菜狗的解题#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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