用C语言编写程序:按照长度从小到大的顺序,输入三个条边长,①判断这三个边能够构成三角形,输出“能”或“不能”;②判断是否是等腰三角形,输出“等腰”或“非等腰”;③判断是否是直角三角形,输出“直角”或“非直角”。(每个输出单独占一行,第一项为“不能”的话不需要输出后两行)
时间: 2023-08-31 20:31:27 浏览: 61
python 判断输入的边长能否构成三角形 示例
5星 · 资源好评率100%
### 回答1:
以下是实现上述功能的C语言代码:
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个边长,以空格分隔:\n");
scanf("%d %d %d", &a, &b, &c);
// 判断是否能构成三角形
if (a + b > c && b + c > a && a + c > b) {
printf("能\n");
// 判断是否为等腰三角形
if (a == b || b == c || a == c) {
printf("等腰\n");
} else {
printf("非等腰\n");
}
// 判断是否为直角三角形
if (a * a + b * b == c * c || b * b + c * c == a * a || a * a + c * c == b * b) {
printf("直角\n");
} else {
printf("非直角\n");
}
} else {
printf("不能\n");
}
return 0;
}
```
运行程序后,输入三个边长,程序将会输出是否能构成三角形、是否为等腰三角形和是否为直角三角形。例如:
```
请输入三个边长,以空格分隔:
3 4 5
能
非等腰
直角
```
### 回答2:
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个边长:\n");
scanf("%d%d%d", &a, &b, &c);
// 判断是否能构成三角形
if ((a + b > c) && (a + c > b) && (b + c > a)) {
printf("能\n");
// 判断是否是等腰三角形
if ((a == b) || (a == c) || (b == c)) {
printf("等腰\n");
// 判断是否是直角三角形
if ((a * a + b * b == c * c) || (a * a + c * c == b * b) || (b * b + c * c == a * a)) {
printf("直角\n");
} else {
printf("非直角\n");
}
} else {
printf("非等腰\n");
}
} else {
printf("不能\n");
}
return 0;
}
```
这段代码首先通过`scanf`函数获取用户输入的三个边长。
然后判断这三个边长能否构成三角形,如果能,就输出"能";否则,直接输出"不能"。
如果能构成三角形,再判断是否为等腰三角形,如果是,输出"等腰";否则,输出"非等腰"。
最后,再判断是否为直角三角形,如果是,输出"直角";否则,输出"非直角"。
### 回答3:
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个边长:\n");
scanf("%d %d %d", &a, &b, &c);
// 判断能否构成三角形
if ((a + b > c) && (a + c > b) && (b + c > a)) {
printf("能\n");
// 判断是否是等腰三角形
if ((a == b) || (b == c) || (a == c)) {
printf("等腰\n");
} else {
printf("非等腰\n");
}
// 判断是否是直角三角形
if ((a*a + b*b == c*c) || (a*a + c*c == b*b) || (b*b + c*c == a*a)) {
printf("直角\n");
} else {
printf("非直角\n");
}
} else {
printf("不能\n");
}
return 0;
}
阅读全文