(2) 请用input函数输入3个学生的数据信息(包括学号、姓名、3门课的成绩、平均分数)。用average函数求每个学生的平均分,用max函数找出平均分最高的学生数据信息。用print函数输出学生的数据信息。在主函数中调用这些函数
时间: 2024-04-23 13:25:40 浏览: 90
好的,以下是实现代码:
```python
# 定义函数:计算平均分
def average(scores):
return sum(scores) / len(scores)
# 定义函数:找出平均分最高的学生信息
def max_score(students):
max_average = 0
max_student = None
for student in students:
if student['average'] > max_average:
max_average = student['average']
max_student = student
return max_student
# 主函数
def main():
# 输入3个学生的数据信息
students = []
for i in range(3):
student = {}
student['id'] = input('请输入学生{}的学号:'.format(i+1))
student['name'] = input('请输入学生{}的姓名:'.format(i+1))
student['scores'] = []
for j in range(3):
score = float(input('请输入学生{}的第{}门成绩:'.format(i+1, j+1)))
student['scores'].append(score)
student['average'] = average(student['scores'])
students.append(student)
# 找出平均分最高的学生信息
max_student = max_score(students)
# 输出学生的数据信息
for student in students:
print('学号:{},姓名:{},成绩:{},平均分:{}'.format(
student['id'], student['name'], student['scores'], student['average']))
print('平均分最高的学生是:学号:{},姓名:{},成绩:{},平均分:{}'.format(
max_student['id'], max_student['name'], max_student['scores'], max_student['average']))
# 调用主函数
main()
```
运行程序,输入每个学生的信息和成绩后,程序会输出每个学生的平均分和平均分最高的学生信息。
阅读全文