class Student:
    def __init__(self, name, english_score, math_score, cpp_score):
        self.name = name
        self.english_score = english_score
        self.math_score = math_score
        self.cpp_score = cpp_score
        self.average_score = (english_score + math_score + cpp_score) / 3

    def __str__(self):
        return self.name


def create_student_list():
    num_of_students = int(input("请输入学生人数:"))
    student_list = []
    for _ in range(num_of_students):
        name = input("请输入学生姓名:")
        english_score = float(input("请输入英语成绩:"))
        math_score = float(input("请输入数学成绩:"))
        cpp_score = float(input("请输入C++成绩:"))
        student = Student(name, english_score, math_score, cpp_score)
        student_list.append(student)
    return student_list


def find_highest_average_score_student(student_list):
    highest_average_score = 0
    highest_average_score_student = None
    for student in student_list:
        if student.average_score > highest_average_score:
            highest_average_score = student.average_score
            highest_average_score_student = student
    return highest_average_score_student


def main():
    student_list = create_student_list()
    highest_average_score_student = find_highest_average_score_student(student_list)
    print("平均成绩最高的学生是:", highest_average_score_student)


if __name__ == "__main__":
    main()
``
本关任务:编写程序建立一个学生的单向链表每个节点包括姓名、英语成绩、数学成绩和C++成绩通过链表操作求出平均成绩最高的学生并输出其姓名。输入约定:先输入学生人数然后依次输入每个学生的姓名、英语成绩、数学成绩和C++成绩。并且平均成绩最高的学生只有一位。

原文地址: https://www.cveoy.top/t/topic/hAqW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录