C语言:用海伦公式求三角形面积
我编了如下程序:
#include
#define s ((a+b+c)/2)
void main()
{
float a,b,c;
double area;
scanf("%f%f%f",&a,&b,&c);
if(a>=b+c || b>=a+c || c>=a+b)
printf("error\n");
else
{
area=sqrt((double)(s*(s-a)*(s-b)*(s-c)));
printf("%f\n",area);
}
}
运行后输入a,b,c的值:2 3 4
运行结果却是-32704.000000,请问这是什么地方出了问题?
人气:394 ℃ 时间:2019-10-19 11:14:18
解答
你用到了函数sqrt,这个需要有头文件math.h
在最上面加上#include 再运行就可以了,即为:
#include
#include
#define s ((a+b+c)/2)
void main()
{
float a,b,c;
double area;
scanf("%f%f%f",&a,&b,&c);
if(a>=b+c || b>=a+c || c>=a+b)
printf("error\n");
else
{
area=sqrt((double)(s*(s-a)*(s-b)*(s-c)));
printf("%f\n",area);
}
}
我调试过,可以正常运行.
推荐
- C语言编程问题,利用海伦公式求三角形面积
- 运用C语言函数和海伦公式求三角形面积?急求
- 求算三角形面积的海伦公式
- c++语言 输入三角形三边a,b,c.判断是否能够构成三角形,如果能构成三角形,通过海伦公式,计算其面积
- 问个三角形面积公式,海伦公式!
- (sin40°×sin130°)÷(cos4175°- sin4175) PS:分母上的4是次方
- 初二 化学 科学 请详细解答,谢谢!(29 10:8:8)
- 求一段英语对话,最好是4个角色的,一个人最好有个五句话
猜你喜欢