第1个回答 2016-05-09
#include <stdio.h>
#include <math.h>
int main()
{
float a,b,c,p,s,q;
scanf("%f%f%f",&a,&b,&c);
p=(a+b+c)/2;
if((a+b>c)&&(a+c>b)&&(c+b>a))
{
q=p*(p-a)*(p-b)*(p-c);
s=sqrt(q);
printf("s = %f\n",s);
}
else
{
printf("Can't form a trangle!\n");
}
}
这里只算出面积,你后面个要求没显示完,不知道你想干嘛
追问不好意思,后面没粘贴完
本回答被提问者采纳
第2个回答 2016-05-09
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,t,s;
printf("请输入3条边长:");
scanf("%f%f%f",&a,&b,&c);
if(a>b){t=a;a=b;b=t;}
if(b>c){t=b;b=c;c=t;}
if(c>=a+b)
{
printf("不能构成三角形!\n");
return 0;
}
if(c*c==a*a+b*b)
{s=a*b/2;
printf("直角三角形面积=%f\n",s);
return 0;
}
s=(a+b+c)/2.0;
s=sqrt(s*(s-a)*(s-b)*(s-c));
printf("一般三角形面积=%f\n",s);
return 0;
}