c语言给定三条边,判断其是否能构成三角形,若能构成,判断其是等腰三角形、等边三角形、直角三角形还是普通三角形。
时间: 2024-01-06 14:03:03 浏览: 86
c代码-根据输入的正整数值,生成一个直角在左上的等腰直角三角形。
好的,这是一个关于判断三角形类型的问题。对于判断三角形是否能构成,我们可以使用三角形两边之和大于第三边的定理来判断。代码如下:
```c
#include <stdio.h>
int main() {
float a, b, c;
printf("请输入三角形三边长:");
scanf("%f %f %f", &a, &b, &c);
if (a+b>c && a+c>b && b+c>a) { // 判断是否能构成三角形
if (a==b || b==c || a==c) { // 判断是否为等腰三角形
if (a==b && b==c) {
printf("能构成等边三角形\n");
} else {
printf("能构成等腰三角形\n");
}
} else 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;
}
```
其中,`scanf` 函数用于输入三角形三边长,`if` 语句中的条件判断用于判断是否能构成三角形,使用 `==` 比较运算符判断是否为等腰三角形或等边三角形,使用勾股定理判断是否为直角三角形。最后输出其类型即可。
阅读全文