学生成绩管理系统 编写一个菜单驱动的学生成绩管理系统,要求实现以下管理功能: (1)录入每个学生的学号和考试成绩; (2)输出所有记录; (3)将学生信息按学号排序; (4)插入一条新的记录; (5)删除一条记录; (6)根据学生姓名查询成绩; (7)对学生成绩进行统计,展示最高分、最低分和平均分。
时间: 2024-01-16 13:02:30 浏览: 70
学生成绩管理系统:主要实现的功能有教师管理、学生管理、课程管理、学生成绩管理
好的,我可以帮你实现这个学生成绩管理系统。以下是代码示例:
```python
class Student:
def __init__(self, id, name, score):
self.id = id
self.name = name
self.score = score
class ScoreManageSystem:
def __init__(self):
self.students = []
def add_student(self):
id = input("请输入学生学号:")
name = input("请输入学生姓名:")
score = float(input("请输入学生成绩:"))
student = Student(id, name, score)
self.students.append(student)
print("添加成功!")
def show_all(self):
print("学号\t姓名\t成绩")
for student in self.students:
print(f"{student.id}\t{student.name}\t{student.score}")
def sort_by_id(self):
self.students.sort(key=lambda x: x.id)
print("排序成功!")
def insert(self):
id = input("请输入学生学号:")
name = input("请输入学生姓名:")
score = float(input("请输入学生成绩:"))
student = Student(id, name, score)
index = int(input("请输入要插入的位置(从0开始):"))
self.students.insert(index, student)
print("插入成功!")
def delete(self):
id = input("请输入要删除的学生学号:")
for student in self.students:
if student.id == id:
self.students.remove(student)
print("删除成功!")
return
print("未找到该学生!")
def search_by_name(self):
name = input("请输入要查询的学生姓名:")
for student in self.students:
if student.name == name:
print(f"{student.name}的成绩为{student.score}")
return
print("未找到该学生!")
def statistics(self):
scores = [student.score for student in self.students]
max_score = max(scores)
min_score = min(scores)
avg_score = sum(scores) / len(scores)
print(f"最高分为{max_score},最低分为{min_score},平均分为{avg_score}")
def menu(self):
while True:
print("=" * 30)
print("学生成绩管理系统")
print("1. 录入学生成绩")
print("2. 输出所有记录")
print("3. 按学号排序")
print("4. 插入一条新的记录")
print("5. 删除一条记录")
print("6. 根据学生姓名查询成绩")
print("7. 统计学生成绩")
print("0. 退出系统")
print("=" * 30)
choice = input("请输入菜单编号:")
if choice == "1":
self.add_student()
elif choice == "2":
self.show_all()
elif choice == "3":
self.sort_by_id()
elif choice == "4":
self.insert()
elif choice == "5":
self.delete()
elif choice == "6":
self.search_by_name()
elif choice == "7":
self.statistics()
elif choice == "0":
print("谢谢使用,再见!")
break
else:
print("输入有误,请重新输入!")
if __name__ == '__main__':
system = ScoreManageSystem()
system.menu()
```
这是一个使用 Python 语言编写的菜单驱动的学生成绩管理系统,支持录入学生成绩、输出所有记录、按学号排序、插入一条新的记录、删除一条记录、根据学生姓名查询成绩、统计学生成绩等功能。你可以根据需要进行修改或优化。
阅读全文