高校学籍成绩管理系统设计与实现:学生信息查询及成绩统计
高校学籍成绩管理系统设计与实现:学生信息查询及成绩统计
本文旨在为某高校设计一个学籍和成绩管理系统,并实现以下功能:
- 学生信息和成绩信息的录入
- 根据学生姓名查询学生的基本信息和成绩信息
- 根据班级号列出学生的基本信息
- 根据班级号输出满足条件的学生成绩信息
- 输出某一同学的成绩单
系统设计
本系统使用 Python 语言实现,主要包含以下功能模块:
-
数据录入模块:
Xslr()函数用于学生信息录入,包含班级号、学号、姓名、专业等信息。Cjlr()函数用于成绩信息录入,包含班级号、学号、课程号、成绩等信息。
-
数据查询模块:
Look1()函数根据学生姓名查询学生的基本信息和成绩信息。Look2()函数根据班级号列出学生的基本信息。
-
成绩统计模块:
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 著作权归作者所有。请勿转载和采集!