编写一个函数sabc(),根据给定的三角形三条边长a,b,c,返回三角形的面积。

如题所述

用海伦公式比较简单。不知道你要用什么语言编写?我简单写一下C语言的:
double sabc(double a, double b, double c)
{
double p,s;
p=(a+b+c)/2;
s=squrt(p*(p-a)*(p-b)*(p-c));
return s;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-02
%let a=1;
%let b=1;
%let c=1;
data a;
if &a le 0 or &b le 0 or &c le 0 or &a+&b le &c or &b+&c le &a or &a+&c le &b then;
s=0;
p=(&a+&b+&c)/2;
s=sqrt(p*(p-&a)*(p-&b)*(p-&c));
put;
run;闲来无事,这个是sas的,其中的abc之后等号的值可以任意替换,加进去一段语句,保证三个数字的值可以构成三角形
第2个回答  2011-06-01
#include <stdio.h>
int main (void)
{
float a,b,c,s,area;
printf("a,b,c:");
scanf("%f,%f,%f;"&a,&b,&c);
s=0.5*(a+b+c);
if(a+b>c&&a+c>b&&b+c>a)
{
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("%f\n",area);
}
else
return 0
}
相似回答