.学生表抽象成一个线性表,每个学生(包括姓名、学号、成绩)作为线性表中的 一个元素,该线性表采用顺序存储结构,对该线性表进行初始化、创建、输出、插入和 删除基本操作,请编写代码实现
时间: 2024-10-21 08:07:00 浏览: 34
实验1_数据结构_输入成绩界面_线性表_
5星 · 资源好评率100%
在Python中,我们可以使用列表(list)来模拟这种线性表,因为列表提供了一种动态数组的数据结构,方便实现顺序存储。这里是一个简单的实现,我们将定义一个`Student`类表示学生信息,并实现了初始化、插入、删除等操作:
```python
class Student:
def __init__(self, name, id, score):
self.name = name
self.id = id
self.score = score
# 初始化一个空的学生列表
def create_empty_student_list():
return []
# 输出所有学生信息
def print_students(students):
for student in students:
print(f"姓名:{student.name}, 学号:{student.id}, 成绩:{student.score}")
# 插入新学生
def insert_student(students, new_student):
students.append(new_student)
# 删除指定学生的操作
def delete_student(students, id_to_remove):
for i, student in enumerate(students):
if student.id == id_to_remove:
del students[i]
break
# 示例使用
students = create_empty_student_list()
students = [Student("张三", "001", 90), Student("李四", "002", 85)]
insert_student(students, Student("王五", "003", 95))
print_students(students)
delete_student(students, "002")
print_students(students)
```
在这个例子中,我们假设`id`是唯一的,所以可以用它来标识要删除的学生。如果你需要更复杂的删除逻辑,可以根据其他条件来查找。
阅读全文