题解 | #三角形判断#
三角形判断
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;
} //需要注意:逻辑与一假则为假,逻辑或一真则为真;左边的表达式成立,右边的表达式就不用计算了。
vivo公司福利 368人发布