用C语言写程序,要求程序运行时,从键盘输入三角形的三条边长(整型),输出三角形的类型代码。若三角形为等边三角形,输出:1:若三角形为等腰三角形,输出:2:若三角形为直角三角形,输出:3:若三角形为一般三角形,输出:0:若输入的三条边不能构成三角形,输出:error!
时间: 2024-11-25 15:08:51 浏览: 1
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
在C语言中编写这个程序,你需要首先获取用户的输入,然后检查这些边长是否满足构成三角形的条件(任意两边之和大于第三边)。接着根据三角形的特性判断并输出相应的类型。这里是一个简单的示例:
```c
#include <stdio.h>
#include <math.h> // 引入数学库以计算平方根
int main() {
int a, b, c;
float s; // 计算半周长
printf("请输入三角形的三条边长:\n");
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) { // 判断是否能构成三角形
s = (a + b + c) / 2; // 半周长
float sqrt_val = sqrt(s * (s - a) * (s - b) * (s - c)); // 计算面积
if (fabs(sqrt_val - floor(sqrt_val)) < 1e-6) { // 等边三角形
printf("1: 等边三角形\n");
} else if (a == b || a == c || b == c) { // 等腰三角形
printf("2: 等腰三角形\n");
} else if (sqrt_val == sqrt(a * a + b * b) && sqrt_val == sqrt(c * c)) { // 直角三角形
printf("3: 直角三角形\n");
} else { // 一般三角形
printf("0: 一般三角形\n");
}
} else {
printf("error!\n"); // 输入的边无法构成三角形
}
return 0;
}
```
阅读全文