创建一个包含学生基本信息(学号、姓名、性别、专业、成绩)的线性链表,使其具有如下功能: (1)逐个显示学生表中所有学生的相关信息; (2)给定一个学生信息(学号、姓名、性别、专业、成绩),插入到表中指
时间: 2024-09-11 19:13:03 浏览: 42
1_lower7y7_定义一个包含学生信息(学号_成绩)的顺序表和链表(二选一)_姓名_使其具有如下功能_
5星 · 资源好评率100%
在创建一个包含学生基本信息的线性链表结构中,我们可以定义一个`Student`节点类,包含学号、姓名、性别、专业和成绩等属性,并提供相应的插入和显示功能。以下是这个设计的一个简单实现:
```python
class StudentNode:
def __init__(self, id, name, gender, major, score):
self.id = id
self.name = name
self.gender = gender
self.major = major
self.score = score
self.next = None
class StudentList:
def __init__(self):
self.head = None
# 插入新学生
def insert_student(self, student_info):
new_node = StudentNode(*student_info)
if not self.head:
self.head = new_node
else:
current = self.head
while current.next:
current = current.next
current.next = new_node
# 显示所有学生信息
def display_students(self):
current = self.head
while current:
print(f"学号:{current.id}, 姓名:{current.name}, 性别:{current.gender}, 专业:{current.major}, 成绩:{current.score}")
current = current.next
# 使用示例
students_list = StudentList()
students_list.insert_student((1, "张三", "男", "计算机科学", 90))
students_list.insert_student((2, "李四", "女", "文学", 85))
students_list.display_students()
```
在这个实现中,我们首先创建了一个`StudentNode`类表示单个的学生节点,然后定义了`StudentList`类,它包含了头结点以及插入和显示学生信息的方法。你可以通过实例化`StudentList`并调用对应方法来操作学生信息。
阅读全文