本关任务:输入3个学生数据,每个学生的数据包括学号、姓名、3门课程的成绩。数据内容如下图所示; 从键盘输入3个学生数据,要求输出3门课程总平均成绩,以及最高分的学生数据(包括学号、姓名、3门课程平均成绩、平均分数)
时间: 2024-09-25 16:07:49 浏览: 54
这是一个编程任务,需要编写一段代码来接收用户输入的三个学生的信息,然后计算每个学生三门课程的总平均成绩和最高分。这里假设每门课程满分是100分。
首先,你需要创建一个数据结构来存储学生信息,比如一个名为`Student`的类,包含属性如`id`, `name`, 和一个存储三门课程成绩的列表。
```python
class Student:
def __init__(self, id, name):
self.id = id
self.name = name
self.grades = [0, 0, 0] # 三门课程的成绩
# 用户输入部分
for i in range(3):
student_id = int(input("请输入第{}个学生的学号:".format(i+1)))
student_name = input("请输入第{}个学生的姓名:".format(i+1))
for j in range(3):
grade = int(input("请输入第{}个学生第{}门课程的成绩:".format(i+1, j+1)))
student_grades[j] = grade
# 计算总平均成绩和最高分
total_average = sum(student_grades) / len(student_grades)
max_grade = max(student_grades)
print(f"学生{student_id}({student_name})的总平均成绩是:{total_average}")
print(f"学生{student_id}({student_name})的最高分是:{max_grade}")
# 输出最高分学生的详细信息
if i == 0 or max_grade > highest_max_grade:
highest_max_grade = max_grade
top_student = Student(id, name)
highest_total_average = total_average
print("\n最高分学生的详细信息:")
print(top_student.__dict__)
```
在这个代码里,我们先初始化每个学生的信息,接着获取每个学生的成绩,并计算总平均成绩和最高分。最后,我们会找到最高分的学生并打印其详细信息。
阅读全文