3. 编写一个程序,实现从键盘输入3个学生数据(每个学生的数据包括学号、姓名、2门课程成绩的),输出每个学生2门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、2门课的成绩、平均分数)。
时间: 2023-12-15 15:01:03 浏览: 104
好的,我可以帮你编写这个程序。以下是 Python 代码实现:
```python
# 定义一个学生类
class Student:
def __init__(self, id, name, score1, score2):
self.id = id
self.name = name
self.score1 = score1
self.score2 = score2
# 计算平均分数
def average(self):
return (self.score1 + self.score2) / 2
# 创建一个空列表,用于存储学生信息
students = []
# 从键盘输入3个学生数据
for i in range(3):
id = input("请输入学生学号:")
name = input("请输入学生姓名:")
score1 = float(input("请输入第1门课程成绩:"))
score2 = float(input("请输入第2门课程成绩:"))
student = Student(id, name, score1, score2)
students.append(student)
# 计算每个学生2门课总平均成绩,并输出
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("平均分数最高的学生是:")
print("学号:{}".format(max_student.id))
print("姓名:{}".format(max_student.name))
print("第1门课程成绩:{}".format(max_student.score1))
print("第2门课程成绩:{}".format(max_student.score2))
print("平均分数:{}".format(max_student.average()))
```
你可以将以上代码保存为 .py 文件并运行,按照提示输入数据,程序将会输出每个学生的平均分数和平均分数最高的学生的数据。
阅读全文
相关推荐















