实 验 报 告
学 院
数学与统计学院
班 级
220801
专 业
信息与计算科学
姓 名
杨天震
学 号
20223773
课 程 名 称
数据结构
实 验 报 告
专业:信息与计算科学 班号:220801 班 姓名:杨天震
实验日期:2024 年 4 月 9 日 第一大节
————————————————————————————————
实验题目:线性表的基本操作
实验内容:
一、SqList
核心算法
1.初始化顺序表:
`InitList(SqList &L)` 函数用于构造一个空的顺序表,分配存储空间并初始化长度
为 0。
2.创建学生信息表:
`CreatList(SqList &L,int n)` 函数根据输入的学生个数 n,逐个输入学生信息,并
存储在顺序表中。
在函数中,首先检查输入的学生个数是否合法,然后利用循环逐个输入学生的学号、
姓名和成绩,并将其存储在顺序表中,并递增顺序表的长度。
3.输出学生信息表:
`OutputList(SqList L)` 函数用于逐个显示学生表中所有学生的学号、姓名和成绩。
通过循环遍历顺序表中的学生信息,依次输出学号、姓名和成绩。
4.查找学生信息:
`FindList(SqList L,char name[])` 函数根据输入的姓名,在学生信息表中查找相应
学生的学号、姓名和成绩,并将其输出。
通过循环遍历顺序表中的学生信息,查找姓名与输入的姓名相匹配的学生信息,若找
到则输出学号、姓名和成绩。
5.根据位置获取学生信息:
`GetList(SqList L,int i)` 函数根据输入的位置 i,返回该位置的学生信息(学号、
姓名和成绩)。
先检查输入的位置是否合法,若合法则输出该位置学生的学号、姓名和成绩。
6.插入学生信息:
`InsertList(SqList &L,int i,char no[],char name[],int score)` 函数根据输入
的学号、姓名、成绩和位置,在学生信息表中插入相应的学生信息。
首先检查插入位置是否合法,然后依次向后移动元素腾出位置,最后将新的学生信息
插入到指定位置。
7.删除学生信息:
`DeleteList(SqList &L,int i)` 函数根据输入的位置 i,删除该位置的学生记录。
首先检查删除位置是否合法,然后将待删除位置后面的元素依次向前移动一个位置,
最后将表长减一。
8.统计学生个数: