我是新手,我必须为学校做一个二次方程式

时间:2014-10-23 22:44:15

标签: c++ equation quadratic

我必须在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,之后它说:&#34;按任意键继续&#34;当我这样做时,控制台窗口消失了。请帮忙

1 个答案:

答案 0 :(得分:1)

您没有打印答案。 。 。对于每种情况(真实根或不真实),您需要添加printf来打印x1和x2的计算值。

该行&#34;暂停&#34;是导致&#34;按任意键继续的行。 。 。 &#34;所以你的程序没有错误就达到了这一点。