c语言输入三角形的三条边a,b,c,判断它们能否构成三角形。若能构成三角形,指出是何种三角形(等腰三角形、等边三角形、一般三角形)
时间: 2024-11-19 16:13:10 浏览: 4
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
在C语言中,判断三条边a、b、c是否能构成三角形,首先需要满足两边之和大于第三边的基本条件。如果这个条件满足,我们可以进一步检查它们的性质:
1. 如果a == b && b == c,那么这是一个等边三角形;
2. 如果a == b || a == c || b == c,但a != b != c,那么这是一个等腰三角形;
3. 其他情况下,就是一般三角形。
以下是简单的步骤实现这个功能的伪代码示例:
```c
#include <stdio.h>
// 判断是否为等边三角形
int isEquilateral(int a, int b, int c) {
return a == b && b == c;
}
// 判断是否为等腰三角形
int isIsosceles(int a, int b, int c) {
return (a == b || a == c || b == c) && a != b != c;
}
// 判断是否为一般三角形
int isScalene(int a, int b, int c) {
return !(isEquilateral(a, b, c) || isIsosceles(a, b, c));
}
int main() {
int a, b, c;
printf("Enter the lengths of sides a, b, and c: ");
scanf("%d %d %d", &a, &b, &c);
// 检查是否构成三角形
if (a + b > c && a + c > b && b + c > a) {
if (isEquilateral(a, b, c)) {
printf("The triangle is an equilateral triangle.\n");
} else if (isIsosceles(a, b, c)) {
printf("The triangle is an isosceles triangle.\n");
} else {
printf("The triangle is a scalene triangle.\n");
}
} else {
printf("These sides cannot form a triangle.\n");
}
return 0;
}
```
阅读全文