输入5个学生的信息,包括学号(num),姓名(name),三门课成绩(score),要求输出每个学生的所有信息(学号、姓名、三门课程成绩、三门课平均成绩)、3门课的总平均成绩,以及总分最高的学生的所有信息。
时间: 2024-09-25 15:07:35 浏览: 256
这是一个编程任务,我们可以使用Python或其他支持列表和字典的数据结构来实现。首先,假设我们有一个包含学生信息的列表,每个元素都是一个字典,包含学号、姓名和三门课的成绩。下面是一个简单的示例:
```python
# 定义学生数据结构
students = [
{"num": 1, "name": "张三", "scores": [80, 90, 85]},
{"num": 2, "name": "李四", "scores": [75, 88, 92]},
{"num": 3, "name": "王五", "scores": [95, 86, 90]},
{"num": 4, "name": "赵六", "scores": [78, 82, 95]},
{"num": 5, "name": "孙七", "scores": [90, 93, 87]},
]
# 计算平均成绩和总分最高学生信息
def calculate_stats(students):
total_scores = []
highest_student = students[0]
for student in students:
avg_score = sum(student["scores"]) / len(student["scores"])
total_scores.append(avg_score)
if avg_score > highest_student["avg_score"]:
highest_student = student
print("每个学生的详细信息:")
for student in students:
print(f"学号:{student['num']}, 姓名:{student['name']}, 平均成绩:{sum(student['scores']) / len(student['scores'])}")
print(f"所有学生的总平均成绩:{sum(total_scores) / len(total_scores)}")
print("\n总分最高的学生信息:")
print(f"学号:{highest_student['num']}, 姓名:{highest_student['name']}, 最高总分:{highest_student['total_score']}")
calculate_stats(students)
```
在这个例子中,我们遍历学生列表,计算每个学生的平均成绩,并记录下总分最高的学生。运行这个函数将得到每个学生的信息、全体学生的平均成绩以及总分最高学生的详细信息。
阅读全文