编写可以实现学生成绩简单管理系统。本系统主要实现以下功能:(1)录入学生信息。(2)按学号查询学生信息。(3)按姓名查询学生信息。(4)添加一个学生信息。(5)按学号删除学生信息(6)按学号修改学生信息(7)显示所有学生信息(8)按课程排序(有高到底)输出显示学生信息(9)按分数段统计学生信息(10)退出系统
时间: 2023-12-01 10:02:30 浏览: 75
好的,这是一个比较全面的学生成绩管理系统,我可以给你提供一些思路和代码实现的思路,但由于篇幅限制,无法提供完整的代码实现。以下是实现该系统的一些思路:
1. 首先,我们需要定义一个学生类,包括学生的姓名、学号、性别、年龄、成绩等信息。
```python
class Student:
def __init__(self, name, id, sex, age, score):
self.name = name
self.id = id
self.sex = sex
self.age = age
self.score = score
```
2. 然后,我们需要一个列表来存储学生信息,可以使用字典或元组来存储,这里我们使用字典来存储。
```python
students = []
```
3. 接着,我们需要实现录入学生信息的功能,可以使用 input 函数来获取用户输入的学生信息,然后将其存储到列表中。
```python
def add_student():
name = input("请输入学生姓名:")
id = input("请输入学生学号:")
sex = input("请输入学生性别:")
age = input("请输入学生年龄:")
score = input("请输入学生成绩:")
student = Student(name, id, sex, age, score)
students.append(student)
print("学生信息录入成功!")
```
4. 实现按学号查询学生信息的功能,可以使用 for 循环遍历学生列表,查找与输入的学号相同的学生信息。
```python
def search_by_id():
id = input("请输入要查询的学生学号:")
for student in students:
if student.id == id:
print("姓名:%s,学号:%s,性别:%s,年龄:%s,成绩:%s" % (student.name, student.id, student.sex, student.age, student.score))
return
print("未找到该学生信息!")
```
5. 实现按姓名查询学生信息的功能,与按学号查询类似,只需要将上面的 id 改为 name 即可。
```python
def search_by_name():
name = input("请输入要查询的学生姓名:")
for student in students:
if student.name == name:
print("姓名:%s,学号:%s,性别:%s,年龄:%s,成绩:%s" % (student.name, student.id, student.sex, student.age, student.score))
return
print("未找到该学生信息!")
```
6. 实现添加一个学生信息的功能,与录入学生信息类似,只是不需要输入学生信息的所有字段,而是根据需要输入相应字段即可。
```python
def add_one_student():
id = input("请输入学生学号:")
for student in students:
if student.id == id:
print("该学生已存在!")
return
name = input("请输入学生姓名:")
sex = input("请输入学生性别:")
age = input("请输入学生年龄:")
score = input("请输入学生成绩:")
student = Student(name, id, sex, age, score)
students.append(student)
print("学生信息添加成功!")
```
7. 实现按学号删除学生信息的功能,可以使用列表的 remove 方法来删除指定学号的学生信息。
```python
def delete_by_id():
id = input("请输入要删除的学生学号:")
for student in students:
if student.id == id:
students.remove(student)
print("学生信息删除成功!")
return
print("未找到该学生信息!")
```
8. 实现按学号修改学生信息的功能,可以使用列表的 index 方法来查找指定学号的学生信息,并使用 input 函数来获取用户输入的新的学生信息。
```python
def update_by_id():
id = input("请输入要修改的学生学号:")
for student in students:
if student.id == id:
name = input("请输入学生姓名:")
sex = input("请输入学生性别:")
age = input("请输入学生年龄:")
score = input("请输入学生成绩:")
student.name = name
student.sex = sex
student.age = age
student.score = score
print("学生信息修改成功!")
return
print("未找到该学生信息!")
```
9. 实现显示所有学生信息的功能,可以使用 for 循环遍历学生列表,逐一输出每个学生的信息。
```python
def display_all():
for student in students:
print("姓名:%s,学号:%s,性别:%s,年龄:%s,成绩:%s" % (student.name, student.id, student.sex, student.age, student.score))
```
10. 实现按课程排序(有高到底)输出显示学生信息的功能,可以使用列表的 sort 方法来排序学生信息,按照成绩从高到低排序。
```python
def sort_by_score():
students.sort(key=lambda student: student.score, reverse=True)
display_all()
```
11. 实现按分数段统计学生信息的功能,可以使用 for 循环遍历学生列表,计算每个分数段的学生人数,并输出统计结果。
```python
def statistic_by_score():
score_60 = 0
score_70 = 0
score_80 = 0
score_90 = 0
score_100 = 0
for student in students:
if student.score < 60:
score_60 += 1
elif student.score < 70:
score_70 += 1
elif student.score < 80:
score_80 += 1
elif student.score < 90:
score_90 += 1
else:
score_100 += 1
print("成绩在60分以下的学生人数:%d" % score_60)
print("成绩在60分到70分之间的学生人数:%d" % score_70)
print("成绩在70分到80分之间的学生人数:%d" % score_80)
print("成绩在80分到90分之间的学生人数:%d" % score_90)
print("成绩在90分以上的学生人数:%d" % score_100)
```
12. 最后,实现退出系统的功能,可以使用 sys 模块中的 exit 函数来退出程序。
```python
import sys
def exit_system():
print("感谢使用学生成绩管理系统,再见!")
sys.exit()
```
以上就是一个简单的学生成绩管理系统的实现思路,你可以在此基础上进行完善和修改,以满足实际需求。
阅读全文