版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、洛阳理工学院实验报告系部计算机系班级学号姓名课程名称数据结构实验日期实验名称链表的基本操作成绩实验目的:(1)掌握线性表的链式存储结构的特点;(2)掌握线性表的基本操作:初始化、插入、删除、查找数据元素等运算在链式存储结构上的实现。实验条件:计算机一台,vc+6.0实验内容与算法思想:内容:建立一有序的链表,实现下列操作:1.把元素x插入表中并保持链表的有序性;2.查找值为x的元素,若找到将其删除;3.输出表中各元素的值。算法思想:先创建并初始化一个顺序表(void init_linklist(LinkList)),通过循环,输入一串数据void CreateFromTail(LinkList
2、 L);创建主函数;编写算法,完成子函数(查找locate,插入insList,删除DelList,输出output)模块;调用子函数,完成实验要求运行结果:实验总结:通过该次实验掌握了线性表的基本操作:插入、删除、查找在顺序存储结构上的实现。更深一步了解到算法在c语言程序中的使用及函数调用的方法。编写过程中出现了比较多的问题,比如排序一直没编好,经过多次修改才运行成功,排序还是c语言的知识,说明对c语言掌握的还不是很好,还需要多加练习。经过这次实验,我觉得我要加倍努力才行,提高自己编写的能力。附:源程序:#include#include#define OK 1#define ERROR 0t
3、ypedef char ElemType;typedef struct NodeElemType data; struct Node* next;Node,*LinkList;void init_linklist(LinkList *l)*l=(LinkList)malloc(sizeof(Node); (*l)-next=NULL; void CreateFromTail(LinkList L)Node *r, *s;char c;int flag =1;r=L; while(flag) c=getchar();if(c!=$)s=(Node*)malloc(sizeof(Node);s-d
4、ata=c;r-next=s;r=s;elseflag=0;r-next=NULL; Node *Locate( LinkList L,ElemType key)int k;Node *p;k=1;p=L-next; while (p!=NULL)if (p-data!=key)p=p-next; k+;else break; printf(查询的元素的位置为:); printf(%dn,k-1);return p; void InsList(LinkList L,int e) LinkList p=L-next,q=L,s; if(p-next=NULL) printf(这是一个空链表n);
5、 else while(p&(p-datanext; if(p&(p-data=e) s=(LinkList)malloc(sizeof(Node); s-data=e; s-next=p; q-next=s; else s=(LinkList)malloc(sizeof(Node); s-data=e; s-next=NULL; q-next=s; int DelList(LinkList L,ElemType key) Node *p,*pt; p=L-next; pt=p-next; if(p-data=key) L-next=pt; free(p); else while(pt!=NU
6、LL) if(pt-data!=key) pt=pt-next; p=p-next; else p-next=pt-next; free(pt); break; if(pt=NULL)printf(无该元素n); else printf(该元素已删除,删除后的排序为:n);return 1; void output(LinkList L)Node *p;p=L-next;while(p!=NULL)printf(%2c,p-data); p=p-next;void main() LinkList L; ElemType m,n,a; init_linklist(&L); printf(请输入您要录入的元素以$结束:n); CreateFromTail(L); output(L); printf(n); printf(请输入您要查询的元素:n); getchar(); n=getchar(); Locate(L,n); printf(请输入您要插入的元素:n); getchar(); m=getchar(); InsList(L, m); output(L); printf(n); printf(请输入您要删除的元素:n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年机械专职安全员c1考试题库及答案
- 2026年监理工程师《案例分析(交通工程)》考试真题及答案
- 2026年考核企业技能等级认定质量督导员公共知识模拟题考试及答案
- 2026年节日美食的营养搭配与健康烹饪试题
- 2026年劳动保障协理员题库(含答案)
- 2026年煤炭矿山职业技能鉴定考试-地下矿山安全检查历年参考题库及答案
- 2026年民用无人机驾驶执照CAAC理论考试题库及完整答案详解
- 2026年企业法律顾问资格试题(民商与经济法律知识)自测(附答案)
- 2026年熔化焊接与热切割作业证考试题库(含答案)
- 车上检地址-捣固焦系统故障排查手册
- 肝癌患者免疫治疗护理
- 低效用地招商开发
- 煤矿作业规程培训课件
- 2026年广东高考物理试卷及答案
- 杂交水稻原理课件
- 雨课堂在线学堂《项目管理概论》作业单元考核答案
- GB/T 46412-2025资产管理碳资产管理体系应用指南
- 脊柱侧弯课件
- 生命早期一千天课件
- 物流营销与客户关系 课件 单元五 物流客户开发
- 大连恒力石化管理制度
评论
0/150
提交评论