2.编写一个程序。定又一个学生类(Student). 数据成员包括学号.姓名、性别和年龄.函数set0初始化学号、姓名、性别和年龄。show0输出学生的学号、姓名、性别和年龄。在主丽数中定文对象数组。并实现输入5个学生的学号.姓名、性别和年龄。按年龄从大到小进行排序输出.
时间: 2023-05-20 17:02:12 浏览: 89
以下是一个示例程序,实现了上述要求:
```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)
def main():
students = [Student() for i in range(5)]
for i in range(5):
id = input("请输入第{}个学生的学号:".format(i+1))
name = input("请输入第{}个学生的姓名:".format(i+1))
gender = input("请输入第{}个学生的性别:".format(i+1))
age = int(input("请输入第{}个学生的年龄:".format(i+1)))
students[i].set0(id, name, gender, age)
students.sort(key=lambda x: x.age, reverse=True)
print("按年龄从大到小排序输出:")
for student in students:
student.show0()
if __name__ == '__main__':
main()
```
运行结果:
```
请输入第1个学生的学号:001
请输入第1个学生的姓名:张三
请输入第1个学生的性别:男
请输入第1个学生的年龄:20
请输入第2个学生的学号:002
请输入第2个学生的姓名:李四
请输入第2个学生的性别:女
请输入第2个学生的年龄:22
请输入第3个学生的学号:003
请输入第3个学生的姓名:王五
请输入第3个学生的性别:男
请输入第3个学生的年龄:18
请输入第4个学生的学号:004
请输入第4个学生的姓名:赵六
请输入第4个学生的性别:女
请输入第4个学生的年龄:21
请输入第5个学生的学号:005
请输入第5个学生的姓名:钱七
请输入第5个学生的性别:男
请输入第5个学生的年龄:19
按年龄从大到小排序输出:
学号: 002
姓名: 李四
性别: 女
年龄: 22
学号: 004
姓名: 赵六
性别: 女
年龄: 21
学号: 001
姓名: 张三
性别: 男
年龄: 20
学号: 005
姓名: 钱七
性别: 男
年龄: 19
学号: 003
姓名: 王五
性别: 男
年龄: 18
```
阅读全文