定义一个圆形类circle为基类,派生出一个圆柱体类cylinder(增加高度属性)。主函数完成对圆柱体类cylinder的成员函数测试。 1)程序代码如下,请补充圆柱体类定义的代码: #include<iostream> using namespace std; #define PI 3.14 class circle { int r; public: circle(int radius=0){r=radius;} void setr(int radius){r=radius;} int getr(){return r;} double area(){return PI*r*r;} void showcircle(){ cout<<"Radius:"<<r<<'\t'<<"Area:"<<area()<<endl;} }; class cylinder: 1 { 2 }; int main() { circle c1(2); cylinder c2(2,3); c1.showcircle(); c2.showcylinder(); return 0; } 使输出结果为: Radius :2 Area:12.56 Radius :2 Area:12.56 volume :37.68 Press any key to continue
时间: 2024-03-18 18:39:30 浏览: 88
定义一个圆类circle,它有一个变量radius(半径)。从键盘输入数据,通过构造函数的参数传递给radius,编程计算并输出圆的的周长和面积。但是,必须确保输入的数据不为复数。
5星 · 资源好评率100%
圆柱体类的定义如下:
```c++
class cylinder : public circle {
int h; // 高度属性
public:
cylinder(int radius = 0, int height = 0) : circle(radius), h(height) {}
void seth(int height) { h = height; }
int geth() { return h; }
double volume() { return area() * h; } // 圆柱体体积公式
void showcylinder() {
cout << "Radius:" << getr() << '\t' << "Area:" << area() << '\t' << "Height:" << h << '\t' << "Volume:" << volume() << endl;
}
};
```
在圆柱体类中我们增加了一个高度属性`h`,并且在构造函数中初始化基类`circle`的`r`属性和本类`cylinder`的`h`属性。
在`volume()`函数中,我们使用了圆柱体的体积公式:$V=\pi r^2 h$。
最后我们在`showcylinder()`函数中输出圆柱体的半径、面积、高度和体积。
在主函数中,我们定义了一个半径为2的圆形`c1`和一个半径为2、高度为3的圆柱体`c2`。然后分别调用它们的`showcircle()`和`showcylinder()`函数,输出它们的属性值。
输出结果为:
```
Radius:2 Area:12.56
Radius:2 Area:12.56 Height:3 Volume:37.68
```
阅读全文