有N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键上输入N个学生的信息, //要求输出总平均成绩最高的学生信息,包括学号、别、姓名和平均成绩。
时间: 2024-09-08 19:04:04 浏览: 45
学生信息管理系统,实现学生信息包括:学号、姓名、性别、年龄、班级等信息。
5星 · 资源好评率100%
这是一个常见的数据处理问题,可以使用哈希表或者字典(在Python中)来存储学生的成绩信息,然后遍历所有的学生,计算每个学生的平均成绩,并记录下平均成绩最高者的学生信息。以下是Python的一个解决方案:
```python
class Student:
def __init__(self, id, gender, name):
self.id = id
self.gender = gender
self.name = name
self.grades = { 'math': 0, 'english': 0, 'science': 0, 'history': 0 } # 初始化成绩为0
def input_student_info():
n = int(input("请输入学生数量: "))
max_avg_score = 0
top_student = None
for _ in range(n):
id, gender, name = input(f"请输入第{(_+1)}个学生的学号、性别和姓名: ").split()
grades_str = input("请输入学生的四门课成绩 (用逗号分隔): ")
grades = [int(score) for score in grades_str.split(',')]
total = sum(grades)
avg = total / len(grades)
if avg > max_avg_score:
max_avg_score = avg
top_student = Student(id, gender, name)
top_student.grades = dict(zip(['math', 'english', 'science', 'history'], grades))
return top_student
top_student = input_student_info()
print(f"总平均成绩最高的学生信息:\n学号:{top_student.id}\n性别:{top_student.gender}\n姓名:{top_student.name}\n平均成绩:{max_avg_score}")
阅读全文