• C语言判断三角形的类型

    根据输入的三角形的三条边判断三角形的类型,并输出其面积和类型。

    算法思想

    首先判断其两边之和是否大于第三边,若大于则判断可以构成三角形,再进一步判断该三角形是什么三角形,并计算这个三角形的面积;否则不能构成三角形。

    ① 从键盘输入三角形的三条边。

    ② 判断两边之和是否大于第三边。

    ③ 若条件成立则判断可构成三角形,计算其面积,并判断其类型;否则判断其不能构成三角形。

    ④ 在类型判断中首先判断其是否三边相等,条件成立则判断其为等边三角形;否则判断其是否有两边相等,条件成立则判断其为等腰三角形;否则判断其是否有两边的平方和等于第三边的平方,条件成立则判断其为直角三角形;否则判断其为普通三角形。

    程序代码

    #include <stdio.h>
    #include <math.h>
    int main()
    {
        float a,b,c;
        float s,area;
        printf("请输入三角形的三条边:\n");
        scanf("%f,%f,%f",&a,&b,&c);
        if(a+b>c&&b+c>a&&a+c>b)
        {
            s=(a+b+c)/2;
            area=(float)sqrt(s*(s-a)*(s-b)*(s-c));
            printf("三角形的面积是:%f\n" ,area);
            if(a==b&&a==c)
                printf("三角形是等边三角形\n");
            else if(a==b||a==c||b==c)
                printf("三角形是等腰三角形\n");
            else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
                printf("三角形是直角三角形\n");
            else
                printf("三角形是普通三角形\n");
        }
        else
            printf("不能构成三角形\n");
        return 0;
    }

    调试运行结果

    输入为 3,3,3 时,对应的输出情况如下所示:

    请输入三角形的三条边:
    3,3,3
    三角形的面积是:3.897114
    三角形是等边三角形

    输入为 3,4,5 时,对应的输出情况如下所示:

    请输入三角形的三条边:
    3,4,5
    三角形的面积是:6.000000
    三角形是直角三角形

    总结

    ① 在本实训之前必须知道三角形的相关知识,比如,怎么判断输入的三边是否能构成三角形、三角形的面积计算方法等。

    要注意逻辑运算符“&&”和“||”的使用,当需要同时满足多个条件时,使用“&&”运算符;而当只需满足多个条件中的一个时,使用“||”运算符。

更多...

加载中...