(1)编写函数triangle,参数为三条边长,函数值为三角形的面积。

(1)编写函数triangle,参数为三条边长,函数值为三角形的面积。

#include<stdio.h>
#include<math.h>
float triangle(int x,int y,int z);
int main()
{int x,y,z;
scanf("%d %d %d",&x,&y,&z);
printf("%f",triangle(x,y,z));
}
float triangle(int x,int y,int z)
{float s,S;
 s=(x+y+z)/2;
 if(x+y<z||x+z<y||y+z<x)
     printf("不能构成三角形");
 else
  S=sqrt(s*(s-x)*(s-y)*(s-z));
  return S;
}

有用请采纳,谢谢。

首先是用户输入是哪个边的边长;
然后选择一边作为底得出高,然后三角形面积底成高除以二;
再然后就是数据损失问题了,可能除不开,可以选择将分子分母分别输出;
假设边长a,b,c,c为底,则c对应的高为(c^2+b^2-a^2)/2c;
最后,做程序最好自己先做,做不出来在问;