在C语言中,从键盘上输入3个数,构成三角形三边,怎么求其面积
发布网友
发布时间:2023-09-17 03:38
我来回答
共3个回答
热心网友
时间:2024-02-16 10:26
三角形三边长为:a,b,c, 当 s=1/2(a+b+c),
三角形的面积为:area=根号下[s(s-a)(s-b)(s-c)]
三角形判定:任意两边之和大于第三边
main()
{ int errormark=0;
float a,b,c,s;
scanf("%f %f %f",&a,&b,&c);
switch (a>b && a>c)
{ case 1: if(b+c<a) { printf("Error"); //break;
errormark=1; }
case 0: switch(b>a && b>c)
{ case 1: if (a+c<b)
{ printf("Error"); errormark=1; }
case 0: if ( a+b<c )
{ printf("Error"); errormark=1; }
}
}
if(errormark==0)
{
s=0.5*(a+b+c);
area=sqrt((s-a)+(s-b)+(s-c));
printf("s=%f area=%f\n",s,area); }
}
程序大致是这样,没有上机调试,排除输入数据非法状态之后,计算面积。
热心网友
时间:2024-02-16 10:27
这个是个数学问题啦,首先要判断3个数能否构成三角形:约束条件:任意两边之和大于第三边,任意两边之差小于第三边;
再就是求面积:这个要用到一个数学公式:
令p=(a+b+c)/2,面积就等于s=根下(p-a)*(p-b)*(p-c)*p
热心网友
时间:2024-02-16 10:27
那么专业的去问团队吧。