用C语言写一个计算三角形的周长和面积
时间: 2023-09-03 19:05:00 浏览: 166
c语言求三角形的面积和周长源码
### 回答1:
可以的,以下是用C语言实现计算三角形周长和面积的示例代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
double a, b, c;
double perimeter, area, s;
printf("请输入三角形的三条边长:\n");
scanf("%lf %lf %lf", &a, &b, &c);
perimeter = a + b + c;
s = perimeter / 2.0;
area = sqrt(s * (s - a) * (s - b) * (s - c));
printf("三角形周长为:%.2f\n", perimeter);
printf("三角形面积为:%.2f\n", area);
return 0;
}
```
该程序通过输入三角形的三条边长,计算三角形的周长和面积,并将结果输出到控制台中。其中,使用了数学库中的sqrt函数来计算平方根,需要在编译时链接该库。
### 回答2:
要使用C语言编写一个计算三角形周长和面积的程序,你可以按照以下步骤:
1. 导入所需的C语言头文件,如stdio.h和math.h。
2. 声明并初始化三角形的边长变量a,b和c。
3. 使用scanf函数从用户输入中读取边长的值。
4. 根据用户输入的边长,计算出三角形的周长,周长等于a + b + c,将结果存储在变量perimeter中。
5. 计算三角形的半周长,半周长等于perimeter / 2,将结果存储在变量half_perimeter中。
6. 使用海伦公式计算三角形的面积,面积等于sqrt(half_perimeter * (half_perimeter - a) * (half_perimeter - b) * (half_perimeter - c)),将结果存储在变量area中。在计算之前,确保math库被正确链接。
7. 使用printf函数将周长和面积输出给用户。
下面是一个示例程序:
```c
#include <stdio.h>
#include <math.h>
int main() {
double a, b, c;
double perimeter, half_perimeter, area;
printf("请输入三角形的边长a:");
scanf("%lf", &a);
printf("请输入三角形的边长b:");
scanf("%lf", &b);
printf("请输入三角形的边长c:");
scanf("%lf", &c);
perimeter = a + b + c;
half_perimeter = perimeter / 2;
area = sqrt(half_perimeter * (half_perimeter - a) * (half_perimeter - b) * (half_perimeter - c));
printf("三角形的周长为%.2lf\n", perimeter);
printf("三角形的面积为%.2lf\n", area);
return 0;
}
```
以上代码将用户输入的三角形边长a、b和c计算为周长和面积,并将结果打印到屏幕上,保留两位小数。
### 回答3:
要用C语言编写一个计算三角形周长和面积的程序,可以按照以下步骤进行:
1. 包含头文件:首先需要包含<stdio.h>头文件以便使用标准输入输出函数。
2. 声明变量:声明三个变量用于存储三角形的三条边长,以及一个变量用于存储面积。
3. 输入边长:使用scanf函数依次读入三个边长的值。
4. 计算周长:将三个边长相加,并将结果赋值给周长变量。
5. 计算面积:使用海伦公式计算三角形面积,
首先计算半周长:半周长 = 周长 / 2,
然后计算面积:面积 = sqrt(半周长 * (半周长 - 边长1) * (半周长 - 边长2) * (半周长 - 边长3)),
其中sqrt函数用于计算平方根,需要包含<math.h>头文件。
6. 输出结果:使用printf函数将周长和面积打印出来,可以使用%f进行浮点数输出。
以下是完整的代码示例:
```c
#include <stdio.h>
#include <math.h>
int main()
{
double side1, side2, side3; // 三角形的三条边长
double perimeter, area; // 周长和面积
printf("请输入三角形的三条边长: ");
scanf("%lf %lf %lf", &side1, &side2, &side3);
perimeter = side1 + side2 + side3;
double halfPerimeter = perimeter / 2;
area = sqrt(halfPerimeter * (halfPerimeter - side1) * (halfPerimeter - side2) * (halfPerimeter - side3));
printf("三角形的周长为: %f\n", perimeter);
printf("三角形的面积为: %f\n", area);
return 0;
}
```
注意:上述代码使用了double作为数据类型,以适应可能的小数输入,如果确定输入为整数,则可以将其改为int型。
阅读全文