【问题描述】声明一个Circle类有数据成员Radius(半径)、成员函数GetArea(,并满足以下要求。 (1)需要定义和合理的构造函数。 (2)使用函数重载方式重载成员函数,当输入一个参数时,被认作创建圆,并认为输入圆半径,计算并返回圆的面积;当输入两个参数时,认为创建一个圆,计算并返回圆环的面积; (3)其他自行界定。 (4)编写合适的主函数,构造一个Cirde的对象进行对象创建,以及成员函数的测试。
时间: 2024-02-09 15:08:02 浏览: 85
定义一个圆类circle,它有一个变量radius(半径)。从键盘输入数据,通过构造函数的参数传递给radius,编程计算并输出圆的的周长和面积。但是,必须确保输入的数据不为复数。
5星 · 资源好评率100%
好的,我已经了解你的问题。下面是 Circle 类的定义和实现:
```cpp
#include <iostream>
using namespace std;
class Circle {
private:
double Radius; // 半径
public:
Circle() { // 默认构造函数
Radius = 0;
}
Circle(double r) { // 有参数的构造函数
Radius = r;
}
double GetArea() { // 获取圆的面积
return 3.14 * Radius * Radius;
}
double GetArea(double r1, double r2) { // 获取圆环的面积
return 3.14 * (r1 * r1 - r2 * r2);
}
};
int main() {
double r1, r2;
cout << "请输入圆的半径:";
cin >> r1;
Circle c1(r1);
cout << "圆的面积为:" << c1.GetArea() << endl;
cout << "请输入圆环的内外半径:";
cin >> r1 >> r2;
Circle c2;
cout << "圆环的面积为:" << c2.GetArea(r1, r2) << endl;
return 0;
}
```
在上面的代码中,我们定义了 Circle 类,其中包含数据成员 Radius 和成员函数 GetArea。Circle 类有两个构造函数,一个是默认构造函数,另一个是有参数的构造函数。GetArea 函数被重载了两次,一次没有参数,计算并返回圆的面积;另一次有两个参数,计算并返回圆环的面积。在主函数中,我们创建了两个 Circle 对象,一个是圆,另一个是圆环,并分别调用了它们的 GetArea 函数,输出了它们的面积。
希望这个回答能够解决你的问题!
阅读全文