已知三角形的面积是 area=s(s-a)(s-b)(s-c),其中 s=(a+b+c)/2,a,b,c 为三角形的三边。 定义两个带参数的宏,一个用来求 s,一个用来求 area,试编写一程序,用带参数的宏来计 算三角形的面积。 C语言
时间: 2023-11-27 17:49:36 浏览: 59
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
可以使用以下代码实现:
```c
#include <stdio.h>
#define CALC_S(a, b, c) ((a + b + c) / 2.0)
#define CALC_AREA(a, b, c) (CALC_S(a, b, c) * (CALC_S(a, b, c) - a) * (CALC_S(a, b, c) - b) * (CALC_S(a, b, c) - c))
int main() {
double a = 3.0, b = 4.0, c = 5.0; // 假设三边分别为 3、4、5
double s = CALC_S(a, b, c);
double area = CALC_AREA(a, b, c);
printf("三角形的面积为: %f\n", area);
return 0;
}
```
输出结果为:
```
三角形的面积为: 6.000000
```
其中,`CALC_S` 宏用来计算三角形的半周长 `s`,`CALC_AREA` 宏用来计算三角形的面积。在主函数中,我们先计算出 `s`,然后带入 `CALC_AREA` 宏中进行计算,最终输出结果。
阅读全文