假设输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型:等边三角形、等腰三角形、不等边三角形或非三角形。C语言
时间: 2024-09-28 17:14:30 浏览: 55
c代码-14.入的三个边长(正整型值),fun函数判断能否构成三角形,若能构成三角形则返回1,若不能构成三角形则返回0。判断方法是任意两边之和大于第三边则构成三角形,否则不能。例如,输入"12,4,9",则输出"可以构成三角形"。
5星 · 资源好评率100%
在C语言中,我们可以创建一个函数来判断给定的三个整数是否能构成一个三角形,并确定其类型。首先,我们需要满足任意两边之和大于第三边的条件,这是构成三角形的基本规则。然后,我们可以通过比较边长的大小来区分不同的三角形类型:
```c
#include <stdio.h>
// 函数声明
enum TriangleType judgeTriangle(int a, int b, int c);
int main() {
int a, b, c;
// 输入三角形的三条边
printf("请输入三角形的三条边长:");
scanf("%d %d %d", &a, &b, &c);
// 判断并打印结果
TriangleType triangle = judgeTriangle(a, b, c);
switch (triangle) {
case TRIANGLE_EQUIilateral:
printf("这是一个等边三角形。\n");
break;
case TRIANGLE_ISOSceles:
printf("这是一个等腰三角形。\n");
break;
case TRIANGLE_SCALene:
printf("这是一个不等边三角形。\n");
break;
default: // 非三角形
printf("这三个数字不能构成一个三角形。\n");
break;
}
return 0;
}
// 判断三角形类型
enum TriangleType judgeTriangle(int a, int b, int c) {
if (a + b <= c || a + c <= b || b + c <= a) { // 非三角形
return NOT_TRIANGLE;
}
if (a == b && b == c) { // 等边三角形
return TRIANGLE_EQUIilateral;
} else if (a == b || a == c || b == c) { // 等腰三角形
return TRIANGLE_ISOSceles;
} else { // 不等边三角形
return TRIANGLE_SCALene;
}
}
```
在这个程序中,`judgeTriangle`函数返回一个枚举值来表示三角形的类型,枚举类型如`TRIANGLE_EQUIilateral`, `TRIANGLE_ISOSceles`, `TRIANGLE_SCALene`和`NOT_TRIANGLE`。
阅读全文