C語言-宏面積

1039: C語言-宏面積

題目描述
三角形面積=SQRT(S*(S-a)(S-b)(S-c)) 其中S=(a+b+c)/2,a、b、c爲三角形的三邊。 定義兩個帶參的宏,一個用來求area, 另一個宏用來求S。 寫程序,在程序中用帶實參的宏名來求面積area。
輸入
a b c三角形的三條邊,可以是小數。
輸出
三角形面積,保留3位小數
樣例輸入
3 4 5
樣例輸出
6.000

# include<stdio.h>
# include<math.h>
# define h1(a,b,c,s)  s=(a+b+c)/(2.0)
# define h2(s,a,b,c,area) area=sqrt(s*(s-a)*(s-b)*(s-c))
int main()
{
	double a,b,c,s,area;
	scanf("%lf %lf %lf",&a,&b,&c);
	h1(a,b,c,s);h2(s,a,b,c,area);
	printf("%0.3lf",area);
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章