用C++ 定义一个圆类cirele作为基类,公有派生出园柱体的类colurmn,求出圆柱体的体积。具体要求如下: 类cirdle:保护数据成员:float I;1/圆的半径公有构造函数:circle(foat);//初始化r 公有成员西数:float getr0; //取圆的半径r double area0; 1/求圆的面积 类column:保护数据成员:float h: /圆柱体的高 公有构造函数:column(float,float):1/初始化r和h 公有成员函数:nloat getho; 1/取圆柱体的高h double vol 0; //求圆柱体的体积 编写一个程序测试该类,测试数据及要求如下: 主两数中定义圆柱体对象:column v(1.0,3.0); 本程序的执行结果如下: 圆柱体属性数据: 半径:1米 高度:3米 面积:3.14平方米 体积:9.42立方米
时间: 2024-01-05 20:02:17 浏览: 86
以下是代码实现:
```cpp
#include <iostream>
using namespace std;
class Circle {
protected:
float r; // 圆的半径
public:
Circle(float _r) : r(_r) {}
float getr() { return r; } // 取圆的半径r
double area() { return 3.14 * r * r; } // 求圆的面积
};
class Column : public Circle {
protected:
float h; // 圆柱体的高
public:
Column(float _r, float _h) : Circle(_r), h(_h) {}
float geth() { return h; } // 取圆柱体的高h
double vol() { return area() * h; } // 求圆柱体的体积
};
int main() {
Column v(1.0, 3.0);
cout << "圆柱体属性数据:" << endl;
cout << "半径:" << v.getr() << "米" << endl;
cout << "高度:" << v.geth() << "米" << endl;
cout << "面积:" << v.area() << "平方米" << endl;
cout << "体积:" << v.vol() << "立方米" << endl;
return 0;
}
```
输出结果为:
```
圆柱体属性数据:
半径:1米
高度:3米
面积:3.14平方米
体积:9.42立方米
```
阅读全文