用C++编写一个程序声明一个Circle类,有数据成员Radius(半径)、成员函数GetArea(),并满足以下要求。 (1)需要定义和合理的构造函数。 (2)使用函数重载方式重载成员函数,当输入一个参数时,被认作创建圆,并认为输入圆半径,计算并返回圆的面积;当输入两个参数时,认为创建一个圆,计算并返回圆环的面积; (3)其他自行界定。 (4)编写合适的主函数,构造一个Circle的对象进行对象创建,以及成员函数的测试。 样例1: 【输入形式】10 【输出形式】 the circle is created! the area is:314
时间: 2024-03-24 16:36:18 浏览: 185
定义一个圆类circle,它有一个变量radius(半径)。从键盘输入数据,通过构造函数的参数传递给radius,编程计算并输出圆的的周长和面积。但是,必须确保输入的数据不为复数。
5星 · 资源好评率100%
下面是一个满足要求的程序:
```c++
#include <iostream>
using namespace std;
class Circle {
private:
double radius;
public:
Circle() : radius(0) {}
Circle(double r) : radius(r) {
cout << "the circle is created!" << endl;
}
double GetArea() {
return 3.14159 * radius * radius;
}
double GetArea(double r1, double r2) {
Circle c1(r1);
Circle c2(r2);
return c1.GetArea() - c2.GetArea();
}
};
int main() {
double r1, r2;
Circle c;
cout << "input the radius of the circle: ";
cin >> r1;
cout << "the area is: " << c.GetArea(r1) << endl;
cout << "input the radius of the outer circle: ";
cin >> r1;
cout << "input the radius of the inner circle: ";
cin >> r2;
cout << "the area of the circle ring is: " << c.GetArea(r1, r2) << endl;
return 0;
}
```
程序中,我们先定义了一个 Circle 类,包含一个私有数据成员 radius 和两个公有成员函数 GetArea()。其中,第一个构造函数用于默认构造 Circle 对象,第二个构造函数用于创建 Circle 对象并初始化 radius。GetArea() 函数用于计算圆的面积,GetArea(double, double) 函数用于计算圆环的面积。
在主函数中,我们先创建一个 Circle 对象 c,并通过 GetArea(r1) 函数计算输入的半径为 r1 的圆的面积。然后,我们通过 GetArea(r1, r2) 函数计算输入的外圆半径为 r1,内圆半径为 r2 的圆环面积。
运行程序,输入半径和圆环内外圆半径,即可得到输出结果。
阅读全文