


免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
肇庆学院计算机学院实 验 报 告专业: 电子商务 班级: 11科技1班 姓名: 黎庆强 学号:201124131147 课程名称: 单链表学年 学期 1 / 2 课程类别 专业必修 限选 任选 实践l 实验时间:2012年 3月23日l 实验内容: 1.编写函数,实现随机产生或键盘输入一组元素,建立一个带头结点的单链表(无序)。2.编写函数,实现遍历单链表。3.编写函数,实现把单向链表中元素逆置(不允许申请新的结点空间)。4.编写函数,建立一个非递减有序单链表。5.编写函数,利用以上算法,建立两个非递减有序单链表,然后合并成一个非递减链表。6.编写函数,在非递减有序单链表中插入一个元素使链表仍然有序。7.编写函数,实现在非递减有序链表中删除值为x的结点。8.编写一个主函数,在主函数中设计一个简单的菜单,分别调试上述算法。l 实验目的及要求:l 目的:1.掌握单链表的存储结构形式及其描述。2.掌握单链表的建立、查找、插入和删除操作。要求:1.插入、删除时元素的移动原因、方向及先后顺序。2.理解不同的函数形参与实参的传递关系。l 实验内容、方法与步骤:(使用附页填写并附在本页后)l 实验结果:(使用附页填写并附在本页后)l 小结:通过这次的实验我学会了如何去运用单链表的建立、查找、插入和删除操作,理解了不同的函数形参与实参的传递关系。分数: 批阅老师: 20 年 月 日第 页 / 共 页肇庆学院计算机科学系实验报告(附页)实验内容、方法与步骤:#includestdio.h#includemalloc.htypedef int datatype;typedef struct node/结点类型的定义datatype data;struct node *next;Lnode,*Linklist;void former_Linklist(Linklist L);/表头插入void later_Linklist(Linklist L);/表尾插入void print_Linklist(Linklist L);/输出数据void youinsert_Linklist(Linklist L,int i);/有序插入int length_Linklist(Linklist L);/求表长void xuhao_Linklist(Linklist L,int i);/按序号查找void anjing_Linklist(Linklist L);/按值查找void delete_Linklist(Linklist L);/删除数据void insert_Linklist(Linklist L);int x,a,i;int main()int choic=1;Linklist L;L=NULL;doprintf(*欢迎使用整型单链表*n); printf(tt【1】表头输入数据 【2】表尾输入数据 【3】按值查找数据nn); printf(tt【4】位置查找数据 【5】删除数据 【6】求单链表的表长nn); printf(tt【7】用有序表插入法建立一个新的单链表nn); printf(tt【8】把元素x插入到有序单链表里,使其依然有序nn); printf(tt【9】退出n);printf(*n); printf(请选择你要进行的操作【1-9】:); scanf(%d,choic);/ 读入一个数 while(choic1|choic9) printf(*输入错误!请重新选择*n); scanf(%d,choic);/读入第二个数 switch(choic) case 1:/表头输入数据 former_Linklist(L); print_Linklist(L); break; case 2:/表尾输入数据 printf(请你输入要插入整型数据的个数:); scanf(%d,a); printf(请你输入%d个整型数据:,a); later_Linklist(L); print_Linklist(L); break; case 3:/按值查找数据 anjing_Linklist(L); break; case 4:/位置查找数据 xuhao_Linklist(L,i); break; case 5: printf(请你输入要删除的整型数据:); scanf(%d,x); delete_Linklist(L);/删除数据 print_Linklist(L); break; case 6: int length; length=length_Linklist(L); printf(此单链表的表长为:%d,length); printf(n); break; case 7: L=(Linklist)malloc(sizeof(Lnode); L-next=NULL; printf(请你输入要建立新单链表整型数据的个数:); scanf(%d,a); printf(请你输入%d个整型数据:,a); for(i=0;ia;i+) scanf(%d,x); insert_Linklist(L); print_Linklist(L); break; case 8: printf(请你输入要插入的整型数据:);scanf(%d,x);insert_Linklist(L);print_Linklist(L); break; while(choic!=9); return 0;/主函数结束void print_Linklist(Linklist L)/输出数据Linklist p;p=L;while(p-next!=NULL)p=p-next; printf(%6d,p-data);printf(n);void former_Linklist(Linklist L)/表头插入 Linklist p,q;printf(请你输入要插入整型数据的个数:);scanf(%d,a);printf(请你输入%d个整型数据:,a); L=(Linklist)malloc(sizeof(Lnode); L-next=NULL; p=L;for(i=0;ia;i+) scanf(%d,x); q=(Linklist)malloc(sizeof(Lnode); q-data=x;q-next=p-next;p-next=q;void later_Linklist(Linklist L)/表尾插入Linklist p,q; L=(Linklist)malloc(sizeof(Lnode); L-next=NULL; p=L; for(i=0;ia;i+) scanf(%d,x); q=(Linklist)malloc(sizeof(Lnode); q-data=x; q-next=NULL; p-next=q; p=q;void anjing_Linklist(Linklist L)/按值查找int j=0;printf(请输入你要查找的整型数据:);scanf(%d,x);Lnode *p=L-next;while(p!=NULLp-data!=x)p=p-next;j+;printf(你要查的整型数据%d的位置为:,x); printf(%6d,j+1);printf(n);void xuhao_Linklist(Linklist L,int i)/按序号查找int j=0;printf(请你输入要查的整型数据的位置:);scanf(%d,i);Lnode *p=L;while(p-next!=NULLji)p=p-next;j+;if(j=i)printf(你要查的位置%d的整型数据为:,i);printf(%6d,p-data);printf(n);void delete_Linklist(Linklist L)/删除数据Lnode *p,*q;p=L;q=L-next;while(qq-data!=x)p=q;q=q-next;if(!q)printf(没有你想要删除的整型数据!);elsep-next=q-next;free(q);void insert_Linklist(Linklist L)/有序插入 Lnode *p,*q;q=(Linklist)malloc(sizeof(Lnode);q-data=x;p=L;w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校晾衣间管理制度
- 学校精准化管理制度
- 学校近出入管理制度
- 学生奶公司管理制度
- 孵化园公司管理制度
- 安全告知牌管理制度
- 安全附加件管理制度
- 完善实训室管理制度
- 宝钢吸烟区管理制度
- 实验室家具管理制度
- JJF 1078-2002光学测角比较仪校准规范
- GB/T 22843-2009枕、垫类产品
- 如何进行生产线编成
- GB 1903.21-2016食品安全国家标准食品营养强化剂富硒酵母
- 脑卒中筛查与干预流程
- 艺术硕士论证报告
- 帕金森病患者的睡眠障碍课件
- 公司质量目标过程绩效评价表
- 埋针治疗评分标准
- 2022 年湖南省长沙市雨花区金海中学小升初数学试卷
- 行业标准:GB∕T 9254.2-2021 信息技术设备、多媒体设备和接收机 电磁兼容 第2部分:抗扰度要求
评论
0/150
提交评论