编写计算面积的函数,分别计算圆、矩形、梯形和三角形等图形的面积。下面是计算这些图形面积的函数原型声明,请编程定义这些函数的实现。 double area(double radius=0); //圆的面积 double area(double a,double b); //矩形面积 double area(double a,double b,double h); //梯形面积 //三角形面积,int型参数起标识作用,以区别梯形,不参加计算。 double area(double a,double b,double c,int);
时间: 2023-11-20 14:07:18 浏览: 96
以下是计算圆、矩形、梯形和三角形面积的函数实现:
```
#include <cmath>
// 计算圆的面积
double area(double radius) {
const double pi = 3.14159;
return pi * pow(radius, 2);
}
// 计算矩形面积
double area(double a, double b) {
return a * b;
}
// 计算梯形面积
double area(double a, double b, double h) {
return (a + b) * h / 2;
}
// 计算三角形面积
double area(double a, double b, double c, int) {
double p = (a + b + c) / 2; // 计算半周长
return sqrt(p * (p - a) * (p - b) * (p - c)); // 海伦公式
}
```
这些函数的实现都比较简单,其中 `pow` 函数用于计算次方,`sqrt` 函数用于计算平方根。注意到最后一个函数的最后一个参数是 `int` 类型,起到标识作用,以区别梯形。因为这个参数不被使用,所以我们可以给它一个有意义的名字,例如 `flag`,并在函数定义中省略它的名字,只保留类型即可:
```
// 计算三角形面积
double area(double a, double b, double c, int /* flag */) {
double p = (a + b + c) / 2; // 计算半周长
return sqrt(p * (p - a) * (p - b) * (p - c)); // 海伦公式
}
```
这样,我们就定义好了计算圆、矩形、梯形和三角形面积的函数。