输入三个正整数,若能用这三个数作为边长组成三角形,就计算并输出该三角形的面积,否则输出Can't。(组成三角形的条件为:任意两边之和大于第三边)。
时间: 2024-09-15 10:09:56 浏览: 70
在C语言中,我们可以创建一个程序来检查输入的三个正整数是否能够构成一个有效的三角形,然后计算其面积(如果可能)。三角形面积的公式是:(a * b * c) / (2 * sqrt((a + b + c) * (-a + b + c) * (a - b + c) * (a + b - c))),其中a, b, 和c是三角形的三边长度。
下面是满足要求的代码:
```c
#include <stdio.h>
#include <math.h> // 引入math库使用sqrt函数
// 函数定义,用于判断是否能构成三角形
int can_form_triangle(int a, int b, int c) {
if (a + b > c && a + c > b && b + c > a) {
return 1; // 可以构成三角形
} else {
return 0; // 不可以构成三角形
}
}
// 计算三角形面积
double triangle_area(int a, int b, int c) {
double s = (a + b + c) / 2.0; // 半周长
return sqrt(s * (s - a) * (s - b) * (s - c)); // 根据海伦公式计算面积
}
int main() {
int a, b, c;
printf("请输入三个正整数(用空格隔开):");
scanf("%d %d %d", &a, &b, &c);
// 检查是否能构成三角形
if (can_form_triangle(a, b, c)) {
double area = triangle_area(a, b, c);
printf("三角形的面积为 %.2f\n", area);
} else {
printf("Can't.\n");
}
return 0;
}
```
阅读全文