已知三角形的面积是area=s(s-a)(s-b)(s-c),其中s=(a+b+c)/2,a、b、c为三角形的三条边。定义两个带参数的函数,一个用来求s,一个用来求area。试编写一个程序,用带参数的函数的宏来计算三角形的面积。 使用if语句
时间: 2024-05-14 07:19:14 浏览: 24
python海伦公式,快速通过三条边计算三角形面积
5星 · 资源好评率100%
以下是使用带参数的函数宏和if语句计算三角形面积的程序:
```c
#include <stdio.h>
#define S(a,b,c) ((a+b+c)/2.0)
#define AREA(a,b,c) (S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c)>0 ? sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c)) : 0)
int main() {
double a = 3.0, b = 4.0, c = 5.0;
printf("三角形的面积为:%.2f\n", AREA(a,b,c));
return 0;
}
```
在上面的程序中,我们定义了两个带参数的函数宏 `S` 和 `AREA`,分别用来计算三角形的半周长和面积。其中,`S` 函数宏的参数是三角形的三条边,返回值是三角形的半周长;`AREA` 函数宏的参数也是三角形的三条边,返回值是三角形的面积。
在 `AREA` 函数宏中,我们使用了if语句来判断三角形是否合法。如果三角形合法,则计算其面积并返回;否则返回0。
在主函数中,我们定义了三角形的三条边并调用 `AREA` 函数宏来计算其面积。最后将结果输出到屏幕上。
阅读全文