- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言链表的插入、删除和查找
实验报告示例
信息系情报10_级 _______班 ____2011__年___月_日姓名___________ 学号__ 电话
编制一个演示单链表插入、删除、查找等操作的程序
本演示程序用编写,完成单链表的生成,任意位置的插入、删除,以及确定某一元素在单链表中的位置。 输入的形式和输入值的范围:插入元素时需要输入插入的位置和元素的值;删除元素时输入删除元素的位置;查找操作时需要输入元素的值。在所有输入中,元素值都是整数 输出的形式:在所有三种操作中都显示操作是否正确以及操作后单链表的内容。其中查找操作后显示要查找元素的位置。 程序所达到的功能:完成单链表的生成(通过插入操作)、插入、删除、查找操作 测试数据: A. 插入操作中输入, B. 查找操作中输入返回这个元素在单链表中的位置 C. 删除操作中输入2,删除位于2的元素
InitLinkList(L) 操作结果:构造一个空的单链表L. InsLinkList(L,pos,e) 初始条件:单链表L已存在 操作结果:将元素e插入到单链表L的pos位置 DelLinkList(L,pos,e) 初始条件:单链表L已存在 操作结果:将单链表L中pos位置的元素删除 LocLinkList(L,e) 初始条件:单链表L依存在 操作结果:单链表L中查找是否元素e, 若存在,返回元素在表中的位置;若不存在,. 2)本程序包含个函数: 主函数main() 初始化单链表函数InitLinkList() 显示单链表内容函数dispLinkList() 插入元素函数InsLinkList() 删除元素函数DelLinkList() 查找元素函数LocLinkList()实现概要设计中定义的所有的数据类型,对每个操作给出伪码算法。对主程序和其他模块也都需要写出伪码算法。 1) 结点类型和指针类型 typedef struct LinkList
{
int data;
struct LinkList *next;
}LIST; 2) 单链表的基本操作
为了方便,在单链表中设头结点,其data域没有意义。 InitLinkList(LinkList L) (伪码算法) DispLinkList(LinkList L) (伪码算法) InsLinkList(LinkList L,int pos,int e) (伪码算法) DelLinkList(LinkList L,int pos,int e) (伪码算法) LocLinkList(LinkList L,int e) (伪码算法)
3) 其他模块伪码算法
5.调试分析
程序执行后显示 ======================== 0----EXIT 1----INSERT 2----DELETE 3----LOCATE ======================= SELECT: 在select后输入数字选择执行不同的功能。要求首先输入足够多的插入元素,才可以进行其他的操作。每执行一次功能,就会显示执行的结果(正确或错误)以及执行后单链表的内容。
1) 建立单链表: ? 选择1,分别输入得到单链表(15,14,13,12,11) 2) 插入: ? 选择1输入(,100),得到单链表(15,100,14,13,12,11) ? 选择1输入(-1,2),显示输入 ? 选择1输入(,2),显示输入 ? 选择1输入(6,2),得到单链表(15 14,13,12,11,2) 3) 删除: ? 选择2,输入。得到单链表(15,13,12,11) ? 选择2,输入。得到单链表(14,13,12,11) ? 选择2,输入4。得到单链表(14,13 11) ? 选择2,输入。显示输入 4) 查找 ? 选择3,输入14。返回pos= ? 选择3,输入100。返回#includestdio.h
#includestdlib.h
typedef struct LinkList
{
int data;
struct LinkList *next;
}LIST;
LIST *InitLinkList();
LIST *InsLinkList(LIST *,int);
LIST *DelLinkList(LIST *,int);
void LocLinkList(LIST *,int);
void dispLinkList(LIST *)
文档评论(0)