2.编写一个程序。定又一个学生类(Student). 数据成员包括学号.姓名、性别和年龄.函数set0初始化学号、姓名、性别和年龄。show0输出学生的学号、姓名、性别和年龄。在主丽数中定文对象数组。并实现输入5个学生的学号.姓名、性别和年龄。按年龄从大到小进行排序输出.
时间: 2023-05-18 14:06:05 浏览: 72
第2章 类、对象和命名空间.pdf 第2章 类、对象和命名空间.pdf第2章 类、对象和命名空间.pdf
以下是一个可能的解决方案:
```python
class Student:
def __init__(self):
self.id = ''
self.name = ''
self.gender = ''
self.age = 0
def set0(self, id, name, gender, age):
self.id = id
self.name = name
self.gender = gender
self.age = age
def show0(self):
print('学号:', self.id)
print('姓名:', self.name)
print('性别:', self.gender)
print('年龄:', self.age)
students = []
for i in range(5):
s = Student()
id = input('请输入第{}个学生的学号:'.format(i+1))
name = input('请输入第{}个学生的姓名:'.format(i+1))
gender = input('请输入第{}个学生的性别:'.format(i+1))
age = int(input('请输入第{}个学生的年龄:'.format(i+1)))
s.set0(id, name, gender, age)
students.append(s)
students.sort(key=lambda s: s.age, reverse=True)
for s in students:
s.show0()
```
这个程序定义了一个学生类,包括学号、姓名、性别和年龄四个数据成员,以及初始化和输出函数。在主函数中,创建了一个学生对象数组,循环输入每个学生的信息,然后按照年龄从大到小排序,最后输出每个学生的信息。
阅读全文