设计圆柱类( Cylinder),包含属性底圆半径和高度, 在主程序中提示用户输入两个数据,分别利用2个、1个、0个数据作为初始化参数创建三个圆柱对象,并输出每个圆柱的表面积和体积,写出运行结果。 用c++编写程序
时间: 2024-11-30 11:18:12 浏览: 56
在C++中,我们可以创建一个名为`Cylinder`的类来表示圆柱体,它有底圆半径和高度两个属性。下面是一个简单的示例程序:
```cpp
#include <iostream>
#include <cmath> // 引入math库用于计算π和圆的面积
class Cylinder {
public:
// 构造函数,可以接受2个参数
Cylinder(double radius = 0, double height = 0) : radius(radius), height(height) {}
// 计算圆柱的表面积(公式:2πrh + 2πr²)
double surfaceArea() const {
return 2 * M_PI * radius * (height + radius);
}
// 计算圆柱的体积(公式:πr²h)
double volume() const {
return M_PI * pow(radius, 2) * height;
}
private:
double radius; // 底圆半径
double height; // 高度
};
int main() {
// 初始化三个圆柱对象,分别使用2个、1个、0个数据
Cylinder cylinder1(5.0, 10.0); // 使用所有参数
Cylinder cylinder2(); // 使用默认值,即半径为0,高度为0
Cylinder cylinder3(cylinder1.radius); // 使用部分参数,只给定半径
// 输出每个圆柱的表面积和体积
std::cout << "Cylinder 1:\n";
std::cout << "Surface Area: " << cylinder1.surfaceArea() << "\n";
std::cout << "Volume: " << cylinder1.volume() << "\n\n";
std::cout << "Cylinder 2:\n";
std::cout << "Surface Area: " << cylinder2.surfaceArea() << "\n";
std::cout << "Volume: " << cylinder2.volume() << "\n\n";
std::cout << "Cylinder 3:\n";
std::cout << "Surface Area: " << cylinder3.surfaceArea() << "\n";
std::cout << "Volume: " << cylinder3.volume() << "\n\n";
return 0;
}
```
当你运行这个程序时,它会提示用户输入数据并计算每个圆柱的表面积和体积。由于我们在这里使用了默认构造函数和赋值操作符,即使某些参数未提供,程序也能正常工作。
阅读全文