我对这些东西很陌生,我必须为学校做一个二次方程

I am new to those stuff i have to do a quadratic equation for school

本文关键字:为学校 二次方程 一个      更新时间:2023-10-16

我必须在Microsoft Visual Studio中创建一个二次方程。

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    float a, b, c, D, x1, x2;
    printf("Type in a :n");
    scanf_s("%d", &a);
    if (a == 0)
    {
        printf("The equation is not quadratic");
    }
    else
    {
        printf("Type in b:n");
        scanf_s("%d", &b);
        printf("Type in c:n");
        scanf_s("%d", &c);
        D = b*b - 4 * a*c;
        if (D < 0)
        {
            printf("There are no real roots");
        }
        else if (D == 0)
        {
            x1 = x2 = -b / (2 * a);
        }
        else
        {
            x1 = (-b + powf(D, 0.5)) / (2 * a);
            x2 = (-b - powf(D, 0.5)) / (2 * a);
        }
    }
    system("pause");
    return 0;
}

这就是我迄今为止所做的。你能告诉我我的错误在哪里吗?工作室没有发现任何错误,但有一个问题——在启动程序后,我键入a、b和c,然后它会说:"按任意键继续",当我这样做时,控制台窗口消失了。请帮助

您没有打印答案。对于每种情况(是否为实根),您都需要添加一个printf来打印x1和x2的计算值。

"暂停"一行是导致"按任意键继续…"的一行,这样您的程序就可以毫无错误地到达该点。