数据结构实验
实验一:顺序表的实现及应用
一、实验实习目的及要求
了解和掌握线性表的顺序存储结构;掌握用C语言上机调试线性表的基本方法;掌握线性表的基本操作:插入、删除、查找以及线性表合并等运算在顺序存储结构和链接存储结构上的运算,以及对相应算法的性能分析。
二、实验实习设备(环境)及要求(软硬件条件)
B516/B517实验室,使用VC上机调试出正确结果
三、实验实习项目、内容与步骤
给定一段程序代码,程序代码所完成的功能为:(1)建立一个线性表;(2)依次输入数据元素1,2,3,4,5,6,7,8,9,10;(3)删除数据元素5;(4)依次显示当前线性表中的数据元素。假设该线性表的数据元素个数在最坏情况下不会超过100个,要求使用顺序表。
程序中有3处错误的地方,有标识,属于逻辑错误,对照书中的代码仔细分析后,要求同学们修改错误的代码,修改后上机调试得到正确的运行结果。
四、实验实习所得结果及分析
1、插入是将后面的元素后移
else
{
//此段程序有一处错误
for(j = L->size; j > i; j--) L->list[j+1] = L->list[j]; /*为插入做准备*/
L->list[i] = x; /*插入*/
L->size ++; /*元素个数加1*/
return 1;
}
2、删除是将后面的元素前移
else
{
//此段程序有一处错误
*x = L->list[i]; /*保存删除的元素到参数x中*/
for(j = i +1; j <= L->size-1; j++)