c语言根据输入的三角形的三条边a、b、c,计算并输出面积和周长
时间: 2024-10-06 19:06:42 浏览: 266
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
在C语言中,根据给定的三角形三条边长a、b、c,我们可以利用海伦公式(Heron's formula)来计算面积,以及直接将三边相加得到周长。以下是相应的步骤:
1. **检查是否能构成三角形**:
首先需要确认a、b、c能否组成合法的三角形,即任意两边之和大于第三边。可以用条件语句检查这个规则。
```c
if (a + b > c && a + c > b && b + c > a) {
// 继续计算
} else {
printf("Invalid triangle sides.\n");
return;
}
```
2. **计算半周长**:
半周长(p) = (a + b + c) / 2
3. **计算面积**:
使用海伦公式,面积(A) = √(p * (p - a) * (p - b) * (p - c))
4. **计算周长**:
周长(C) = a + b + c
5. **输出结果**:
最后,打印出三角形的面积和周长。
```c
double p = (a + b + c) / 2.0; // 半周长
double area = sqrt(p * (p - a) * (p - b) * (p - c)); // 海伦公式计算面积
double perimeter = a + b + c; // 周长
printf("Triangle Perimeter: %.2f\n", perimeter);
printf("Triangle Area: %.2f\n", area);
```
注意:这里假设输入的是有效浮点数,并使用`sqrt()`函数从头文件`math.h`中导入。实际编写时,还需要处理可能的除以零错误(当p为整数而有小数部分时)。同时,`%.2f`用于控制输出的小数位数。
阅读全文