输入三角形的三边,怎样用C语言编写求三角形面积的程序?

2024-11-26 07:43:41
推荐回答(4个)
回答1:

给,已经编译运行确认:
#include
#include
#include

int main()
{
float a,b,c;
float area,s;

printf("请输入三角行的三边:");
scanf("%f %f %f",&a,&b,&c);
if(a>0&&b>0&&c>0)
{
if((a+b>c)&&(a+c>b)&&(b+c>a))
{
printf("\n这三边能组成三角形\n");

s=(a+b+c)/2.0;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积为: %f\n",area);

if(((a*a+b*b)==c*c)||((a*a+c*c)==b*b)||((c*c+b*b)==a*a))
printf("这是直接三角形\n");
else if((a==b)&&(a==c)&&(b==c))
printf("这是等边三角形\n");
else if((a==b)||(a==c)||(b==c))
printf("这是等腰三角形\n");
else printf("这是普通三角形\n");
}
else
printf("\n这三边不能组成三角形\n");
}
else
printf("\n输入错误!");

getch();
return 1;
}

回答2:

首先判断是否能构成三角形
再根据公式直接求
具体步骤也是比较简-单的

回答3:

好像有个公式
面积的平方=s(s-a)(s-b)(s-c),其中 s =(a+b+c)/2
应该没记错,知道公式,你做起来就简单了
开根号用sqrt函数

回答4:

#include
#include
void main()
{

double a,b,c,s,area;
printf("input a,b,c:");
scanf("%lf,%lf,%lf",&a,&b,&c);
if (a+b>c && a+c>b && b+c>a)
{ s=(a+b+c)*0.5;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%6.2f",area);
}
else
printf("it is not a trilateral");
}