本题要求用c语言编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area= s(s−a)(s−b)(s−c) ,其中s=(a+b+c)/2。
时间: 2024-11-06 08:20:04 浏览: 56
(完整版)C语言程序设计练习题(含程序及参考答案).doc
在C语言中,你可以按照以下步骤编写程序来计算三角形的面积和周长:
```c
#include <stdio.h>
#include <math.h> // 引入数学库用于求平方根
// 函数声明
double calculate_area(double a, double b, double c);
double calculate_perimeter(double a, double b, double c);
int main() {
double a, b, c;
printf("请输入三角形的三边长度(a, b, c): ");
scanf("%lf %lf %lf", &a, &b, &c); // 输入三角形的三条边
// 检查是否满足三角形条件
if (a + b > c && a + c > b && b + c > a) {
// 计算周长
double perimeter = calculate_perimeter(a, b, c);
printf("三角形的周长是: %.2f\n", perimeter);
// 计算面积,需要先计算半周长s
double s = (a + b + c) / 2;
double area = calculate_area(a, b, c);
printf("三角形的面积是: %.2f\n", area);
} else {
printf("这不是有效的三角形边长组合.\n");
}
return 0;
}
// 定义计算面积的函数
double calculate_area(double a, double b, double c) {
double s = (a + b + c) / 2; // 半周长
return sqrt(s * (s - a) * (s - b) * (s - c)); // 使用海伦公式
}
// 定义计算周长的函数
double calculate_perimeter(double a, double b, double c) {
return a + b + c;
}
```
在这个程序里,用户首先输入三角形的三条边,然后检查是否满足构成三角形的条件。如果符合条件,分别计算并输出周长和面积。`calculate_area`函数使用了海伦公式计算三角形的面积。
阅读全文