实验单链表操作验证

上传人:cn****1 文档编号:488009023 上传时间:2022-11-15 格式:DOC 页数:13 大小:67.50KB
返回 下载 相关 举报
实验单链表操作验证_第1页
第1页 / 共13页
实验单链表操作验证_第2页
第2页 / 共13页
实验单链表操作验证_第3页
第3页 / 共13页
实验单链表操作验证_第4页
第4页 / 共13页
实验单链表操作验证_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《实验单链表操作验证》由会员分享,可在线阅读,更多相关《实验单链表操作验证(13页珍藏版)》请在金锄头文库上搜索。

1、 实 验 报 告课程名称 数据构造 实验名称 单链表操作验证 实验类型 验证型实验 实验地点 计04机房 实验日期.1028指引教师 魏海平 专业 计算机科学与技术 班级 算计101 学号 姓名 张强 辽宁石油化工大学计算机与通信工程学院 数据构造实验报告评分表项目规定分数有无项目()得分预习报告(30分)实验目的明确5实验内容理解透彻5实验方案设计完整合理程序总体框架设计完整0完毕有关辅助代码5测试方案合理实验过程(3分)发现问题问题的分析问题的解决措施10实验报告(20分)内容翔实无缺漏5如实记录实验过程0撰写规整5实验总结(10分)实验成果的分析5按照成果对原实验方案的改善意见5实验体会

2、(10分)实验的收获5实验内容的发散考虑5总分 实验一 单链表操作验证一.实验目的(1)掌握线性表的链接存储构造;()验证单链表及其基本操作的实现;()进一步掌握数据构造及算法的程序实现的基本措施。二.实验内容()用头插法(或尾插法)建立带头结点的单链表;(2)对已建立的单链表实现插人、删除、查找等基本操作。三实验环节1需求分析本演示程序用+编写,完毕单链表的生成,任意位置的插入、删除,以及拟定某一元素在单链表中的位置。 输入的形式和输入值的范畴:插入元素时需要输入插入的位置和元素的值;删除元素时输入删除元素的位置;查找操作时需要输入元素的值。在所有输入中,元素的值都是整数。 输出的形式:在所

3、有三种操作中都显示操作与否对的以及操作后单链表的内容。其中删除操作后显示删除的元素的值,查找操作后显示要查找元素的位置。 程序所能达到的功能:完毕单链表的生成(通过插入操作)、插入、删除、查找操作。测试数据:(1) 生成单链表1 2324 3 45 56(2) 查找1 位置为3(3) 删除数据 2(4) 插入 (5) 输出数据 1 2326 3 45 4562. 源程序如下:#inclueincudesting.hincud#includenum,&head-d); il=hea; or(i2;nu,&pd); tail-ext=p; til=; tail-ext=NULL; retur(hd

4、); vid tpt(strucdata *hea)n j; struc daa *p0,; p=hea; or(j=;len;j+) for(i=;iext; if(-nump0nu) p1=p;p=0;p0=p1; r(p=ea;!=NULL;p-nex) prntf(d:dn,nu,p);trut dat ns(strutdata*hed) ucdaa *,*p1,; sruct dt *ns; rint(输入插入的位置和数据:); is(rct data )maloc(en); saf(%d%d,&ins-num,&is-d); p=ed; p0=ins; if(ad=NUL) ha=

5、p0;p-nxt=NULL; lse hile(0-np1-n)&(p1net!=NUL)p2=p; p=1-et; if(p0-ump1-um)if(heap) had=p0; le 2-next=p; p-nxt=1; ele-net=p;-ex=ULL; or(p=head;!NULL;p=pext) rinf(%d: %dn,p-num,pd); return(head); struct at *e(rucdaa *head)str aa*,2; in num; prtf(输入删除位置:); scnf(d,&num); if(ad=NUL) print(链表空!);got ; 1=he

6、ad; while(p-n!=num&p1-nex!=NULL) p;p11-nxt; f(1-um=um) if(p1=ead) head=p1-next; ele p2-nex=p1-net; el pt(没有发现%d!n,num); fr(p=ed;p!=NULL;p=p-next) print(%: dn,p-num,-d); e:retrn(had);oifi(trct daa *ed) tuct daa p; intu; pr(输入查找位置:); scn(%,&num); if(had=NUL) prntf(链表空!n);goo d; p=hed; whle(pnum!=num&p

7、1-next!=NLL) p=p1-t; if(p1nm=num) rintf(这数据信息n); pritf(d: dn,p-num,-d); lse printf(%d 没有发现!,nm); en:;vodmain()struct data head; it seect; ha=NUL; hile(1) pinf(1:创立 2:插入 :删除 :查找 5:输出 6:退出n); prt(please inpuel:); scanf(d,&elect); witch(lect) se:hed=创立();break; ca 2:head=插入(hed);brea; ae3:ea删除(ea);bre;

8、 cse :查找d(had);bre; cse5:输出(head);rek; case 6:退出(); 3. 使用阐明:=1:创立 :插入 :删除 4:查找 5:输出 :退出=Seect:在seet后输入数字选择执行不同的功能。规定一方面输入足够多的插入元素,才可以进行其她的操作。每执行一次功能,就会显示执行的成果(对的或错误)以及执行后单链表的内容。选择.创立一种单链表。选择2.选择插入的位置和和数据。选择.输入要删除的位置,程序将删除该位置的数据。选择4.输入查找到位置,程序将显示该位置的数据。选择5.程序将自动输出通过变化后的单链表。选择6.退出程序。4. 测试成果截图:四、实验总结(成果分析和体会)1. 我又进一步巩固了语言的基本,特别是指针那部分;2. 通过实验加深了对线性表的操作方面知识的结识。更深层次理解了单链表的操作特点及优缺陷;3. 通过实验达到了理论与实践结合的目的,提高了自己的编程能力;4. 通过实验是我进一步对单链表进行了复习与巩固。这是在实践中对自我能力的提高。5. 程序也许不够完善需要在学习过程中不断去完善,这需要平时的努力。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号