学生成绩管理系统 编写一个菜单驱动的学生成绩管理系统,要求实现以下管理功能: (1)录入每个学生的学号和考试成绩; (2)输出所有记录; (3)将学生信息按学号排序; (4)插入一条新的记录; (5)删除一条记录; (6)根据学生姓名查询成绩; (7)对学生成绩进行统计,展示最高分、最低分和平均分。
时间: 2024-01-16 08:02:30 浏览: 24
好的,这是一个很典型的学生成绩管理系统,我可以为您提供一份示例代码,您可以根据您的需求进行修改。以下是示例代码:
```python
# 定义一个字典用于存储学生信息
students = {}
# 录入学生成绩
def add_student():
while True:
student_id = input("请输入学生学号:")
score = input("请输入学生考试成绩:")
students[student_id] = int(score)
flag = input("是否继续录入(Y/N):")
if flag.lower() == 'n':
break
# 输出所有学生信息
def show_students():
print("学号\t成绩")
for student_id, score in students.items():
print(student_id + '\t' + str(score))
# 按学号排序
def sort_students():
sorted_students = sorted(students.items(), key=lambda x: x[0])
students.clear()
for student in sorted_students:
students[student[0]] = student[1]
# 插入一条新记录
def insert_student():
student_id = input("请输入学生学号:")
score = input("请输入学生考试成绩:")
students[student_id] = int(score)
# 删除一条记录
def delete_student():
student_id = input("请输入要删除的学生学号:")
if student_id in students:
del students[student_id]
print("删除成功!")
else:
print("该学生不存在!")
# 根据学生姓名查询成绩
def search_student():
name = input("请输入要查询成绩的学生姓名:")
for student_id, score in students.items():
if student_id.startswith(name):
print(student_id + '\t' + str(score))
# 学生成绩统计
def statistics():
scores = list(students.values())
max_score = max(scores)
min_score = min(scores)
avg_score = sum(scores) / len(scores)
print("最高分:%d,最低分:%d,平均分:%.2f" % (max_score, min_score, avg_score))
# 菜单
def menu():
print("学生成绩管理系统")
print("1. 录入学生成绩")
print("2. 输出所有记录")
print("3. 按学号排序")
print("4. 插入一条新的记录")
print("5. 删除一条记录")
print("6. 根据学生姓名查询成绩")
print("7. 统计学生成绩")
print("0. 退出系统")
# 主函数
def main():
while True:
menu()
choice = input("请选择操作:")
if choice == '1':
add_student()
elif choice == '2':
show_students()
elif choice == '3':
sort_students()
elif choice == '4':
insert_student()
elif choice == '5':
delete_student()
elif choice == '6':
search_student()
elif choice == '7':
statistics()
elif choice == '0':
break
else:
print("无效的选择,请重新输入!")
if __name__ == '__main__':
main()
```
希望对您有所帮助!