在主函数给出数据,利用函数重载,分别求出三角形,梯形,圆的面积
时间: 2024-05-20 19:17:01 浏览: 95
#include <iostream>
using namespace std;
// 重载函数计算三角形面积
double area(double a, double b, double c) {
double p = (a + b + c) / 2.0; // 计算半周长
return sqrt(p * (p - a) * (p - b) * (p - c)); // 海伦公式
}
// 重载函数计算梯形面积
double area(double a, double b, double h1, double h2) {
return (a + b) * (h1 + h2) / 2.0; // 梯形面积公式
}
// 重载函数计算圆的面积
double area(double r) {
return 3.1415926 * r * r; // 圆的面积公式
}
int main() {
double a, b, c, h1, h2, r;
cout << "请输入三角形的三边长:";
cin >> a >> b >> c;
cout << "三角形的面积为:" << area(a, b, c) << endl; // 调用第一个重载函数
cout << "请输入梯形的上底、下底、高:";
cin >> a >> b >> h1;
cout << "请输入梯形的另一个高:";
cin >> h2;
cout << "梯形的面积为:" << area(a, b, h1, h2) << endl; // 调用第二个重载函数
cout << "请输入圆的半径:";
cin >> r;
cout << "圆的面积为:" << area(r) << endl; // 调用第三个重载函数
return 0;
}
阅读全文