输入三角形三条边,如果能够成三角形就输出面积,否则输出error。C语言编程
时间: 2024-12-06 10:26:00 浏览: 17
在C语言中,计算三角形面积通常需要知道两边及其夹角,直接通过三边长判断是否能构成三角形并求解面积是比较复杂的任务,因为这涉及到海伦公式或者判定规则(如三角形的两边之和大于第三边)。这里我们可以简化问题,仅检查三边能否组成合法的三角形。
下面是一个简单的程序示例,用于检查输入的三条边是否可以构成一个三角形,并在可以的情况下计算其面积(假设输入的是整数且都是正数,实际项目中可能需要更严格的边界条件检查):
```c
#include <stdio.h>
#include <math.h>
// 判断三条边是否能形成三角形
int is_triangle(int a, int b, int c) {
if (a + b > c && a + c > b && b + c > a)
return 1; // 如果满足条件则返回1
else
return 0; // 否则返回0
}
// 计算半周长
double semi_perimeter(int a, int b, int c) {
return (a + b + c) / 2;
}
// 计算面积(海伦公式)
double triangle_area(int a, int b, int c) {
double s = semi_perimeter(a, b, c);
return sqrt(s * (s - a) * (s - b) * (s - c));
}
int main() {
int a, b, c;
printf("请输入三角形的三条边长:");
scanf("%d %d %d", &a, &b, &c);
if (is_triangle(a, b, c)) {
double area = triangle_area(a, b, c);
printf("三角形的面积是:%.2f\n", area);
} else {
printf("错误:无法构成三角形。\n");
}
return 0;
}
```
阅读全文