单链表的基本操作.docx
《单链表的基本操作.docx》由会员分享,可在线阅读,更多相关《单链表的基本操作.docx(8页珍藏版)》请在第一文库网上搜索。
1、单链表的基本操作实验一线性表的基本操作及其应用一、实验目的1、帮助读者复习C语言程序设计中的知识。、熟悉线性表的逻辑结构。23、熟悉线性表的基本运算在两种存储结构上的实现,其中以熟悉链表的操作为侧重点。二、实验内容本次实验提供3个题目,每个题目都标有难度系数,*越多难度越大,学生可以根据自己的情况任选一个题目一:单链表的基本操作(*)问题描述实现带头结点的单链表的建立、求长度,取元素、修改元素、插入、删除等单链表的基本操作。基本要求(1)依次从键盘读入数据,建立带头结点的单链表;(2)输出单链表中的数据元素(3)求单链表的长度;(4)根据指定条件能够取元素和修改元素;(5)实现在指定位置插入和
2、删除元素的功能。【程序调试】ttinc1ude*ma11oc()等*/inc1ude*scanf(),NU11*/ttinc1ude*free()*/ttinc1ude/*getch()*/*函数结果状态代码*/#defineOK1defineERROROtypedefintStatus;typedefintE1emType;typedefstruct1Node(E1emTypedata;struct1Node*next;1Node,*1ink1ist;voidCreate1ist(1ink1ist*1,intn)*算法2.11*/*逆位序(插在表头)输入n个元素的值,建立带表头结构的单链线性
3、表1*/inti;1ink1istp;*1=(1ink1ist)ma1Ioc(sizeof(struct1Node);(*1)-next=NU11;/*先建立一个带头结点的单链表*/Printf(请输入%d个数据n”,n);for(i=n;i0;-i)(p=(1ink1ist)ma1Ioc(sizeof(struct1Node);/*生成新结点*/SCanf&p-data);/*输入元素值*/p-next=(*1)-next;/*插入到表头*/(*1)-next=p;voidCreate1ist2(1ink1ist*1,intm)*正位序(插在表尾)输入n个元素的值,建立带表头结构的单链线性表
4、1*/inti;1ink1istp,q;*1=(1ink1ist)ma11oc(sizeof(struct1Node);/*生成头结点*/(*1)-next=NU11;q=*1;Printf(请输入%d个数据n,m);for(i=1;idata);q-next=p;q=q-next;p-next=NU11;voidPrint1ink1ist(1ink1ist1)(1Node*p;p=1-next;whi1e(p)printf(z/%dz,p-data);if(p-next)printf(,z);p=p-next;)Printf(n);)Status1istinsert(1ink1ist1,in
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单链表 基本 操作
