C语言 输入三角形的两条边及夹角(度数),计算其面积并输出,结果保留2位小数 假设圆周率=3.14159
时间: 2024-10-28 15:07:13 浏览: 44
创建类MyMath,计算圆的周长、面积和球的表面积、体积,结果保留两位小数。若输入的是非数字,则输出:请输入数字!提示:要引入math包。
5星 · 资源好评率100%
在C语言中,你可以使用余弦定理来计算一个非直角三角形的面积,如果给出了两边及其夹角。首先,你需要让用户输入三条边长a、b和c,以及它们之间的角度C(注意C不是90度)。然后,你可以按照以下步骤计算面积:
1. 根据余弦定理求第三边c(如果已知两边和一角):
```c
double cos_C = cos(C * M_PI / 180); // 将角度转换为弧度
c = sqrt(a * a + b * b - 2 * a * b * cos_C);
```
2. 计算半周长p:
```c
double p = (a + b + c) / 2; // 半周长公式
```
3. 使用海伦公式计算面积S:
```c
double s = p * (p - a) * (p - b) * (p - c); // 海伦公式
double area = sqrt(s); // 取面积的平方根
```
4. 输出面积,保留两位小数:
```c
printf("三角形的面积约为%.2f\n", area);
```
完整的代码示例如下:
```c
#include <stdio.h>
#include <math.h>
int main() {
double a, b, c;
float angle_C;
printf("请输入三角形的两条边长(a 和 b): ");
scanf("%lf %lf", &a, &b);
printf("请输入这两条边之间的夹角C(度): ");
scanf("%f", &angle_C);
c = sqrt(a * a + b * b - 2 * a * b * cos(angle_C * M_PI / 180)); // 根据余弦定理求c
double p = (a + b + c) / 2; // 半周长
double s = p * (p - a) * (p - b) * (p - c); // 海伦公式
double area = sqrt(s); // 面积
printf("三角形的面积约为%.2f\n", area);
return 0;
}
```
阅读全文