学生成绩管理:有5个学生,每个学生的数据包括学号、姓名、班级、三门课成绩。从键盘输入5个学生数据,要求打印出每个学生三门课的平均成绩,以及平均分最高的学生并输出该学生的数据(包括学号、姓名、班级、三门课成绩,平均分)。
时间: 2024-09-19 18:03:34 浏览: 43
班级学生成绩管理系统课程设计样本
在学生成绩管理系统中,你可以设计一个简单的结构来存储每个学生的信息,比如创建一个名为`Student`的类,包含属性如`student_id`, `name`, `class_name`, 和一个记录三门课程成绩的列表。以下是基本步骤:
1. **定义学生类**:
```python
class Student:
def __init__(self, student_id, name, class_name):
self.student_id = student_id
self.name = name
self.class_name = class_name
self.grades = [0, 0, 0] # 初始化三门课的成绩
def input_grades(self):
for _ in range(3):
grade = int(input(f"请输入第{i+1}门课程的成绩({self.name}): "))
self.grades[i] = grade
def calculate_average_grade(self):
return sum(self.grades) / len(self.grades)
```
2. **获取和打印学生信息**:
```python
students = []
for i in range(5):
student_id = i + 1
name = input(f"请输入学生{student_id}的姓名:")
class_name = input(f"请输入学生{student_id}所在的班级:")
student = Student(student_id, name, class_name)
student.input_grades()
print(f"{student.name}的平均成绩: {student.calculate_average_grade()}")
# 找出平均成绩最高者
max_avg_student = max(students, key=lambda s: s.calculate_average_grade())
print("\n平均分最高的学生:")
print(f"学号: {max_avg_student.student_id}, 姓名: {max_avg_student.name}, 班级: {max_avg_student.class_name}")
print(f"成绩: {max_avg_student.grades}")
阅读全文