这个怎么又乱码了,我没看懂,应该怎么修改才行啊?我真的不知道了。
scanf中的&a,&b,%c之间应该用逗号隔开,而不是直接用空格。
公式写错了
【以下回答由 GPT 生成】
要计算三角形的面积,可以使用海伦公式或三角函数公式。根据代码中的计算公式,我们需要使用三角函数公式来计算面积。以下是修改后的代码:
#include <stdio.h>
#include <math.h>
int main() {
float a, b, c;
float cosA, sinA, area;
printf("请输入三边边长:");
scanf("%f %f %f", &a, &b, &c);
// 将三角函数函数的参数改为弧度制
a = a * M_PI / 180;
b = b * M_PI / 180;
c = c * M_PI / 180;
cosA = (cos(a) + cos(b) + cos(c)) / 2; // 根据余弦定理计算cos(A)
sinA = sqrt((1 - cosA) * (1 - cosA)); // 由cos(A)^2 + sin(A)^2 = 1得到sin(A)
area = (a * b * sinA) / 2; // 由正弦公式计算面积
printf("三角形的面积:%f\n", area);
return 0;
}
以上代码中,我们将读入的角度值转换为弧度制,同时修改了计算cosA
和sinA
的公式,使用三角函数代替了原来的平方和开平方操作。这样就能正确地计算出三角形的面积。
请注意,以上代码假设输入的角度是以度为单位的。如果输入的是弧度,则无需进行角度制的转换。
【相关推荐】
供参考: