高校学籍成绩管理系统设计与实现:学生信息查询及成绩统计

本文旨在为某高校设计一个学籍和成绩管理系统,并实现以下功能:

  1. 学生信息和成绩信息的录入
  2. 根据学生姓名查询学生的基本信息和成绩信息
  3. 根据班级号列出学生的基本信息
  4. 根据班级号输出满足条件的学生成绩信息
  5. 输出某一同学的成绩单

系统设计

本系统使用 Python 语言实现,主要包含以下功能模块:

  1. 数据录入模块:

    • Xslr() 函数用于学生信息录入,包含班级号、学号、姓名、专业等信息。
    • Cjlr() 函数用于成绩信息录入,包含班级号、学号、课程号、成绩等信息。
  2. 数据查询模块:

    • Look1() 函数根据学生姓名查询学生的基本信息和成绩信息。
    • Look2() 函数根据班级号列出学生的基本信息。
  3. 成绩统计模块:

    • Dayin1() 函数根据班级号输出满足条件的学生成绩信息。
    • Dayin2() 函数输出某一同学的成绩单。

代码实现

# 学生信息类
class Student:
    def __init__(self, 班级号, 学号, 姓名, 专业):
        self.班级号 = 班级号
        self.学号 = 学号
        self.姓名 = 姓名
        self.专业 = 专业

# 成绩信息类
class Score:
    def __init__(self, 班级号, 学号, 课程号, 成绩):
        self.班级号 = 班级号
        self.学号 = 学号
        self.课程号 = 课程号
        self.成绩 = 成绩

# 学生信息录入函数
def Xslr():
    学生列表 = []
    while True:
        班级号 = int(input('请输入班级号:'))
        if 班级号 == -1:
            break
        学号 = int(input('请输入学号:'))
        姓名 = input('请输入姓名:')
        专业 = input('请输入专业:')
        学生列表.append(Student(班级号, 学号, 姓名, 专业))
    return 学生列表

# 成绩信息录入函数
def Cjlr():
    成绩列表 = []
    while True:
        班级号 = int(input('请输入班级号:'))
        if 班级号 == -1:
            break
        学号 = int(input('请输入学号:'))
        课程号 = input('请输入课程名:')
        成绩 = int(input('请输入成绩:'))
        成绩列表.append(Score(班级号, 学号, 课程号, 成绩))
    return 成绩列表

# 根据姓名查找学生信息函数
def Look1(学生列表, 成绩列表):
    姓名 = input('请输入要查找的学生的姓名(输入姓名为-1结束):')
    while True:
        if 姓名 == '-1':
            break
        for 学生 in 学生列表:
            if 学生.姓名 == 姓名:
                print('班级号   学号   姓名   课程号   成绩')
                for 成绩 in 成绩列表:
                    if 成绩.学号 == 学生.学号:
                        print(f'{成绩.班级号}        {成绩.学号}      {成绩.姓名}   {成绩.课程号}      {成绩.成绩}')
                break
        else:
            print('未找到该学生信息!')
        姓名 = input('请输入要查找的学生的姓名(输入姓名为-1结束):')

# 根据班级号列出学生基本信息函数
def Look2(学生列表):
    班级号 = int(input('请输入要查询的班级号:'))
    print('班级号   学号   姓名   专业')
    for 学生 in 学生列表:
        if 学生.班级号 == 班级号:
            print(f'{学生.班级号}        {学生.学号}      {学生.姓名}   {学生.专业}')

# 根据班级号输出满足条件的学生成绩信息函数
def Dayin1(成绩列表):
    班级号 = int(input('请输入要查询的班级号:'))
    print('班级号   学号   课程号   成绩')
    for 成绩 in 成绩列表:
        if 成绩.班级号 == 班级号:
            print(f'{成绩.班级号}        {成绩.学号}      {成绩.课程号}      {成绩.成绩}')

# 输出某一同学的成绩单函数
def Dayin2(学生列表, 成绩列表):
    学号 = int(input('请输入要查询的学号:'))
    print('班级号   学号   课程号   成绩')
    for 成绩 in 成绩列表:
        if 成绩.学号 == 学号:
            print(f'{成绩.班级号}        {成绩.学号}      {成绩.课程号}      {成绩.成绩}')

# 程序入口
if __name__ == '__main__':
    print('*************************请输入学生数据(班级号为-1结束)************************')
    学生列表 = Xslr()
    print('**************************请输入成绩数据(班级号为-1结束)***********************')
    成绩列表 = Cjlr()
    Look1(学生列表, 成绩列表)
    Look2(学生列表)
    Dayin1(成绩列表)
    Dayin2(学生列表, 成绩列表)

程序运行结果

*************************请输入学生数据(班级号为-1结束)************************
请输入班级号:1
请输入学号:1
请输入姓名:王平
请输入专业:计算机科学
请输入班级号:-1
**************************请输入成绩数据(班级号为-1结束)***********************
请输入班级号:1
请输入学号:1
请输入课程名:c++
请输入成绩:90
请输入班级号:-1
请输入要查找的学生的姓名(输入姓名为-1结束)
王平
班级号   学号   姓名   课程号   成绩
1        1      王平   c++      90
请输入要查找的学生的姓名(输入姓名为-1结束)
-1
请输入要查询的班级号:1
班级号   学号   姓名   专业
1        1      王平   计算机科学
请输入要查询的班级号:1
班级号   学号   课程号   成绩
1        1      c++      90
请输入要查询的学号:1
班级号   学号   课程号   成绩
1        1      c++      90

总结

本系统实现了高校学籍和成绩管理的基本功能,可以方便地录入、查询和统计学生信息和成绩信息。未来可以进一步完善系统功能,例如添加用户权限控制、数据备份和恢复等功能。


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

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