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

计算一元二次方程

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

#include <stdio.h>
#include <math.h>

int main() {
    float a = 0;
    float b = 0;
    float c = 0;
    float x1 = 0;
    float x2 = 0;
    while (scanf("%f%f%f", &a, &b, &c) != EOF) {
        float d = -b / (2.0 * a);
        float det = b * b - 4.0 * a * c;
        if (a == 0)
            printf("Not quadratic equation");
        else {
            if (det == 0) {
                x1 = -b / (2.0 * a);
                x2 = -b / (2.0 * a);
                if (x1 != 0)
                    printf("x1=x2=%.2f", x1);
                else
                    printf("x1=x2=0.00");
            } else if (det > 0) {
                x1 = -b / (2.0 * a) - sqrt(det) / (2.0 * a);
                x2 = -b / (2.0 * a) + sqrt(det) / (2.0 * a);
                printf("x1=%.2f;x2=%.2f", x1, x2);
            } else {
                x1 = sqrt(-det) / (2.0 * a);
                x2 = sqrt(-det) / (2.0 * a);
                printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi", d, x1, d, x2);
            }
        }
        printf("\n");
    }
    return 0;
}

主要是注意括号怎么打和情况怎么分

全部评论

相关推荐

01-07 11:46
Java
如图:也是让我遇到逆天公司了,实习生是按天给工资,不忙直接强制休假了
baskly:公司为北京超图软件股份有限公司武汉分公司,明年公司应该会招新实习生,刷到的小伙伴快跑
点赞 评论 收藏
分享
2025-12-31 14:31
湖南科技大学 Web前端
是阿亮吖:一个是这个时间招人比较少,另一个是沟通太少了。六十多份太养生了,最起码沟通个五六百份吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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