用C语言中“Ifelse”解决Δ的判断

这个程序断断续续写了三天

直接亮出成果吧

#include <stdio.h>

int main()
{
    int a, b, c;
    float dert;
    
    printf("输入:");

    scanf("%d %d %d", &a, &b, &c);
    dert = (b * b) - (4 * a * c); 

    if(dert > 0)
    {
        printf("2\n");
    }
    else if(dert == 0)
    {
        printf("1\n");
    }
    else if(dert < 0)
    {
        printf("0\n");
    }

    return 0;
}

这是最开始的代码,一直用float函数来表示a b c,没有发现这里有问题,以为是“if”语句中出了问题,就一直在其中去找错

最后还是翻到之前的一个没有想通的代码中找到了答案

#include <stdio.h>

int main(void){
    double P = 3.14259;
    float r = 5.0;//先前是用“int”函数表示,最后输出一直为“0”
    float s;

    s = r * r * P;
    printf("s = %lf\n", s);

}

最后将“int”改为“float”

#include <stdio.h>

int main()
{
    float a, b, c;
    float dert;
    
    printf("输入:");

    scanf("%d %d %d", &a, &b, &c);
    dert = (b * b) - (4 * a * c); 

    if(dert > 0)
    {
        printf("2\n");
    }
    else if(dert == 0)
    {
        printf("1\n");
    }
    else if(dert < 0)
    {
        printf("0\n");
    }

    return 0;
}

终于,三天将这个判断式写好了。

13:11:34 2021-03-16

posted @ 2021-03-16 13:12  Demon丶安梓  阅读(82)  评论(0编辑  收藏  举报