编写可以实现学生成绩简单管理系统。本系统主要实现以下功能:( 1)录入学生信息。(2)按学号查询学生信息。(3)按姓名查询学生信息。(4)添加一个学生信息。(5)按学号删除学生信息(6)按学号修改学生信息(7)显示所有学生信息(8)按课程排序(有高到底)输出显示学生信息(9)按分数段统计学生信息( 10)退出系统【设计要求】( 1) 以上功能通过菜单实现:(2) 通过输出菜单中的数字,完成相应的操作:
时间: 2023-10-07 14:14:16 浏览: 45
好的,我可以为你编写一个学生成绩简单管理系统,实现以上功能,你只需要按照菜单中的数字进行相应操作即可。
下面是程序的代码实现:
```python
import sys
class Student:
def __init__(self, id, name, gender, age, course1, course2, course3):
self.id = id
self.name = name
self.gender = gender
self.age = age
self.course1 = course1
self.course2 = course2
self.course3 = course3
self.score = course1 + course2 + course3
def show_info(self):
print("学号:", self.id)
print("姓名:", self.name)
print("性别:", self.gender)
print("年龄:", self.age)
print("课程1成绩:", self.course1)
print("课程2成绩:", self.course2)
print("课程3成绩:", self.course3)
print("总成绩:", self.score)
print()
def add_student(students):
print("请输入学生信息:")
id = input("学号:")
name = input("姓名:")
gender = input("性别:")
age = input("年龄:")
course1 = int(input("课程1成绩:"))
course2 = int(input("课程2成绩:"))
course3 = int(input("课程3成绩:"))
student = Student(id, name, gender, age, course1, course2, course3)
students.append(student)
print("学生信息添加成功!")
def find_student_by_id(students, id):
for student in students:
if student.id == id:
student.show_info()
return
print("找不到学号为{}的学生!".format(id))
def find_student_by_name(students, name):
for student in students:
if student.name == name:
student.show_info()
print("找不到姓名为{}的学生!".format(name))
def delete_student(students, id):
for student in students:
if student.id == id:
students.remove(student)
print("学生信息删除成功!")
return
print("找不到学号为{}的学生!".format(id))
def modify_student(students, id):
for student in students:
if student.id == id:
print("请输入修改后的学生信息:")
student.name = input("姓名:")
student.gender = input("性别:")
student.age = input("年龄:")
student.course1 = int(input("课程1成绩:"))
student.course2 = int(input("课程2成绩:"))
student.course3 = int(input("课程3成绩:"))
student.score = student.course1 + student.course2 + student.course3
print("学生信息修改成功!")
return
print("找不到学号为{}的学生!".format(id))
def show_all_students(students):
if len(students) == 0:
print("暂无学生信息!")
else:
for student in students:
student.show_info()
def sort_by_course(students):
students.sort(key=lambda x:x.score, reverse=True)
def stat_by_score(students):
count1 = count2 = count3 = count4 = 0
for student in students:
if student.score >= 300:
count1 += 1
elif student.score >= 200:
count2 += 1
elif student.score >= 100:
count3 += 1
else:
count4 += 1
print("300分以上:{}人".format(count1))
print("200分以上:{}人".format(count2))
print("100分以上:{}人".format(count3))
print("100分以下:{}人".format(count4))
def main():
students = []
while True:
print("欢迎使用学生成绩管理系统!")
print("1. 录入学生信息")
print("2. 按学号查询学生信息")
print("3. 按姓名查询学生信息")
print("4. 添加一个学生信息")
print("5. 按学号删除学生信息")
print("6. 按学号修改学生信息")
print("7. 显示所有学生信息")
print("8. 按课程排序输出学生信息")
print("9. 按分数段统计学生信息")
print("10. 退出系统")
choice = int(input("请选择:"))
if choice == 1:
add_student(students)
elif choice == 2:
id = input("请输入学号:")
find_student_by_id(students, id)
elif choice == 3:
name = input("请输入姓名:")
find_student_by_name(students, name)
elif choice == 4:
add_student(students)
elif choice == 5:
id = input("请输入学号:")
delete_student(students, id)
elif choice == 6:
id = input("请输入学号:")
modify_student(students, id)
elif choice == 7:
show_all_students(students)
elif choice == 8:
sort_by_course(students)
show_all_students(students)
elif choice == 9:
stat_by_score(students)
elif choice == 10:
print("感谢使用学生成绩管理系统!")
sys.exit()
else:
print("输入错误,请重新输入!")
if __name__ == '__main__':
main()
```
你只需要运行这个程序,按照菜单选择相应功能,就可以实现学生成绩的管理。