题解 | #三角形判断#

三角形判断

https://www.nowcoder.com/practice/689ec1e742394e09b1059556fc167b65

#include <stdio.h>

int main() {
    int a, b, c;
    while (scanf("%d %d %d", &a, &b, &c) != EOF)
    {
        if (((a + b > c) && (a + c > b)) && (b + c > a))
        //先判断是否任意两边之和大于第三边,需要三个条件都满足,用&&,然后内嵌if再判断是否等边或等腰。
        {
            if ((a == b) && (b == c))//等边需要三条边都相等,用&&
                printf("Equilateral triangle!\n");
            if (a != b && a != c && b != c)//普通三角需要三条边都不相等,用&&。
            {
                printf("Ordinary triangle!\n");
            }
            if ((a==b||b==c||a==c)&& (a!= b||b!=c||a!= c))
            //等腰三角需只需要满足任意两边相等,用||;并且要保证第三边不等于任意两边,用&&。
                printf("Isosceles triangle!\n");
        }
        else
            printf("Not a triangle!\n");
    }
    return 0;
}  //需要注意:逻辑与一假则为假,逻辑或一真则为真;左边的表达式成立,右边的表达式就不用计算了。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务