首页 > 解决方案 > 定义三角形类型的程序

问题描述

我想我被if/else if语句困住了。程序来定义三角形的类型。

我不明白,为什么它不能正常工作。而且,如果它不难,你能展示如何使用勾股定理优化直角三角形的工作吗?为了不将直角三角形与其他三角形混合。

代码:

int main() {
    int a = 3;
    int b = 4;
    int c = 5;

    int angle_A = 100;
    int angle_B = 10;
    int angle_C = 70;

    if (a == b && a == c && c == b) {
        printf("Equilateral triangle\n");
    }
    else if (a == c || b == c || a == b) {
        printf("isosceles triangle.\n");
    }
    if ((pow(c, 2) == pow(b, 2) + pow(a, 2)) || (pow(a, 2) == pow(b, 2) || pow(c, 2)) || (pow(b, 2) == pow(c, 2) + pow(a, 2))) {
        printf("right-angled triangle.\n");
    }
    if ((angle_A < 90 || angle_B < 90 || angle_C < 90) && angle_A + angle_B + angle_C == 180) {
        printf("acute-angled triagle.\n");
    }
    if ((angle_A > 90 || angle_B > 90 || angle_C > 90) && angle_A + angle_B + angle_C == 180) {
        printf("An obtuse triangle.\n");
    }
return 0;
}

此代码的输出:

right-angled triangle.
acute-angled triangle.
An obtuse triangle.

标签: c

解决方案


#include<stdio.h>
int main() {
    int a = 3;
    int b = 4;
    int c = 5;

    int angle_A = 100;
    int angle_B = 10;
    int angle_C = 70;

    if(angle_A+angle_B+angle_C==180){
       if (angle_A==60 && angle_B==60 && angle_C==60) {
            printf("Equilateral triangle\n");
        }
        else if (a==c || b==c || a==b) {
            printf("isosceles triangle.\n");
        }
        ///////If one of the angle is 90 then its a right angled triangle///////
        if (angle_A==90||angle_B==90||angle_C==90){
            printf("right-angled triangle.\n");
        }
        ////If all angles are less than 90 then its an acute angled triangle/////
        if (angle_A < 90 && angle_B < 90 && angle_C < 90) {
            printf("acute-angled triangle.\n");
        }
        ////If one of the angle is greater than 90 degree then its an obtuse angled triangle////
        if (angle_A > 90 || angle_B > 90 || angle_C > 90) {
            printf("An obtuse triangle.\n");
        }
    }
    return 0;
}

如果一个角度就是90这样。然后它的一个right angled triangle.


推荐阅读