编写程序。定义一个圆形类Circle,其中包含1个私有字段成员(半径),3个公有方法成员(设置半径、计算面积和计算周长)和3 个构造方法(不带参数的构造方法、带参数的构造方法和拷贝构造方法)。再定义一个主类测试圆形类Circle,要求: ⅰ定义一个圆形对象c1,然后从键盘输入一个数值x并将其设定为c1的半径,计算并显示c1的面积和周长。 ⅱ再定义一个圆形对象c2并将半径初始化为2x,计算并显示c2的面积和周长。 ⅲ再定义一个圆形对象c3并用c1初始化c3,计算并显示c3的面积和周长。
时间: 2023-05-20 11:03:40 浏览: 83
好的,以下是Circle类的代码:
```python
class Circle:
def __init__(self):
self.__radius = 0
def __init__(self, radius):
self.__radius = radius
def __init__(self, other_circle):
self.__radius = other_circle.get_radius()
def set_radius(self, radius):
self.__radius = radius
def get_radius(self):
return self.__radius
def get_area(self):
return 3.14 * self.__radius * self.__radius
def get_perimeter(self):
return 2 * 3.14 * self.__radius
```
以下是测试类的代码:
```python
class TestCircle:
def main(self):
c1 = Circle()
x = int(input("请输入半径:"))
c1.set_radius(x)
print("c1的面积为:", c1.get_area())
print("c1的周长为:", c1.get_perimeter())
c2 = Circle(2 * x)
print("c2的面积为:", c2.get_area())
print("c2的周长为:", c2.get_perimeter())
c3 = Circle(c1)
print("c3的面积为:", c3.get_area())
print("c3的周长为:", c3.get_perimeter())
```
请问还有什么问题吗?
阅读全文