给出三角形三边a、b、c,用带实参的宏名求三角形的面积area。
(1)定义一个带参的宏,用来计算p=(a+b+c)/2。
(2)定义一个带参的宏,用来求面积area。
(3)编写主函数,输入三边的长,计算面积。
#include<stdio.h>
#include<math.h>
#define length(a,b,c) (a+b+c)/2.0
#define Area(a,b,c) sqrt(p*(p-a)*(p-b)*(p-c))
int main(){
float a,b,c;
float p,s;
for(int i=0;i<4;i++){
scanf("%f%f%f",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a){
printf("面积为无");
return 0;
}
p=length(a,b,c);
s=Area(a,b,c);
printf("面积为%.2f",s);
}
return 0;
}
海伦定理:假设三角形的三边为a、b、c,记p=(a+b+c)/2,则三角形的面积
S= sqrt(p*(p-a)*(p-b)*(p-c))