2. 有一个班的学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入学生数据,要求求出每个学生的平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均成绩)
时间: 2023-12-16 11:28:31 浏览: 104
接收从键盘输入某班学生的学号、姓名、成绩,对学 生的成绩进行排序.zip
5星 · 资源好评率100%
以下是Python实现的代码,可以实现输入学生信息,计算平均成绩,找到最高分学生的信息并输出:
```python
# 定义一个学生类
class Student:
def __init__(self, number, name, score):
self.number = number
self.name = name
self.score = score
self.average = sum(score) / len(score)
# 输入学生信息
students = []
while True:
number = input("请输入学生学号(输入0结束输入):")
if number == '0':
break
name = input("请输入学生姓名:")
score = []
for i in range(3):
score.append(int(input("请输入第{}门课的成绩:".format(i+1))))
students.append(Student(number, name, score))
# 计算每个学生的平均成绩
for student in students:
print("学生{}的平均成绩为:{}".format(student.name, student.average))
# 找到最高分学生的信息并输出
max_average = 0
max_student = None
for student in students:
if student.average > max_average:
max_average = student.average
max_student = student
print("平均成绩最高的学生是{},学号为{},三门课的成绩分别为{},平均成绩为{}".format(max_student.name, max_student.number, max_student.score, max_student.average))
```
阅读全文