版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、院 系: 计算机科学学院 专 业: 计算机科学与技术 年 级: 课程名称: 数据结构 学 号: 姓 名: 指导教师: 2011年 03 月 26 日年级班号学号专业计算机科学与技术姓名实验名称线性表基本操作实验类型设计型综合型创新型yes实验目的或要求目的:实现线性表基本操作要求:1、实现线性表的插入,删除,求表长,查找e元素的前驱、后继,查找第i个位置的元素等基本操作。2、程序以菜单方式工作,其中一个选项控制退出程序,其他选项可循环进行选择。实验记录实验源代码:#include #include #include typedef structint num;char name20;int a
2、ge;student;typedef structstudent *elem;int len;int maxsize;sqlist; void initlist_sq(sqlist &l)l.elem=(student*)malloc(100*sizeof(student);l.len=0;l.maxsize=100;(写不完时,可另加附页。)实验记录 int listinsert_sq(sqlist &l)char con=y;int i=0;while(con=y)|(con=y)if(l.len100)printf(number:);scanf(%d,&l.elemi.num);prin
3、tf(name:);scanf(%s,l.);printf(age:);scanf(%d,&l.elemi.age);i+;l.len+; printf(do you want to contiune?(y/n);getchar();scanf(%s,&con); while(con!=y)&(con!=y)&(con!=n)&(con!=n)printf(you can not choice butyandn,please choice again!);getchar();scanf(%s,&con);elsecon=n;return 1;(写不完时,可另加附页。)实验记
4、录 int output_sq(sqlist &l)int j;for(j=0;ji-2;j-) l.elemj+1=l.elemj; printf(number:);scanf(%d,&l.elemi-1.num);printf(name:);scanf(%s,l.);printf(age:);scanf(%d,&l.elemi-1.age);l.len+; void listdelete(sqlist &l)int i,j;printf(which place do you want to delete?);scanf(%d,&i);for(j=i;jl.len-1
5、;j+);l.elemj=l.elemj+1;l.len-;(写不完时,可另加附页。)实验记录 void mergelist(sqlist &l,sqlist &r,sqlist &c)int i,j,k;i=j=0;k=0;while(i=l.len-1)&(j=r.len-1)if(l.elemi.num=r.elemj.num) c.elemk.num=l.elemi.num; strcpy(c.,l.); c.elemk.age=l.elemi.age; +k;+i;c.len+;elsec.elemk.num=r.elemj.num; strc
6、py(c.,r.); c.elemk.age=r.elemj.age; +k;+j;c.len+;while(i=l.len-1) c.elemk.num=l.elemi.num; strcpy(c.,l.); c.elemk.age=l.elemi.age; +k;+i;c.len+;while(j=r.len-1) c.elemk.num=r.elemj.num; strcpy(c.,r.); c.elemk.age=r.elemj.age; +k;+j;c.len+;(
7、写不完时,可另加附页。)实验记录 int main() int choice ; sqlist l,r,c; initlist_sq(l); initlist_sq(r); initlist_sq(c); while(choice!=8) printf(*content*n);printf(* if you want to write a new list of student s information * choice 1 *n);printf(* if you want to visit zhe student information list * choice 2 *n);printf
8、(* if you want to add more to the student information list * choice 3 *n);printf(* if you want to delete some of the student information list * choice 4 *n);printf(* if you want to visit one of the student in zhe list * choice 5 *n);printf(* if you want to add the two list to a new one * choice 6 *n
9、);printf(* if you want to visit zhe list which include 2 list * choice 7 *n);printf(* if you want to quit this program * choice 8 *n);printf(*n);printf( n);printf(which do you want to choice? just type zhe number for choice); scanf(%d,&choice);(写不完时,可另加附页。)实验记录 switch(choice)case 1: int m; printf(wh
10、ich list do you want to insert?); scanf(%d,&m); if(m=1) listinsert_sq(l); else listinsert_sq(r); break;case 2: int d; printf(which list do you want to out put?); scanf(%d,&d); if(d=1) output_sq(l); else output_sq(r);break;case 3: int a; printf(which list do you want to add one student?); scanf(%d,&a
11、); if(a=1) insert(l); else insert(r);break;case 4: int b; printf(which list do you want to delete one student?); scanf(%d,&b); if(b=1) listdelete(l); else listdelete(r); break;(写不完时,可另加附页。)实验记录 case 5: int c; printf(which list do you want to getelem?); scanf(%d,&c); if(c=1) getelem(l); else getelem(
12、r);break; case 6: mergelist(l,r,c);printf(ok!n); break; case 7:output_sq(c);printf(ok!n);break;case 8:break;default:printf(n);printf(n);printf (please make zhe right choice!n);printf(n);printf(n);break;return 1; (写不完时,可另加附页。)实验记录 运行结果如下:显示菜单界面,用户根据自己的需求选择需要处理的选项。(写不完时,可另加附页。)实验记录 用户选择需要插入的线性表:输入元素信息
13、:是否继续插入:(写不完时,可另加附页。)实验记录继续插入信息:(写不完时,可另加附页。)实验记录 用户往线性表1中添加元素:访问线性表1中元素并输出:(写不完时,可另加附页。)实验记录 访问线性表1中某元素:再创建一个线性表2:(写不完时,可另加附页。)实验记录将线性表1,2合并为一个新的线性表:删除线性表2中某一元素:(写不完时,可另加附页。)实验记录 访问合并的新线性表:(写不完时,可另加附页。)实验记录 退出:(写不完时,可另加附页。)组内分工(可选)实验结果分析及心得体会1. 用户根据自己的需求创建线性表,向其中添加元素(元素信息:学号,姓名,年龄);2. 用户可以访问线性表并输出其内容;3. 用户可向线性表中添加元素;4. 用户可以删除线性表中的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 郑州商贸旅游职业学院《单片机应用课程设计》2023-2024学年第一学期期末试卷
- 小学2024年艺术教育发展年度报告
- 浙江电力职业技术学院《纤维化学与物理学》2023-2024学年第一学期期末试卷
- 长春大学《卫生财务管理》2023-2024学年第一学期期末试卷
- 生产调度中的敏捷性管理策略
- 餐饮新员工安全训练模板
- AI企业技术路演模板
- 水的化学属性模板
- 生物制药业策略讲解模板
- 亲子活动相册制作模板
- 海南省天一大联考2024届高一物理第一学期期末监测试题含解析
- 重症医学科运用PDCA循环降低失禁性皮炎发生率品管圈成果汇报
- 物理化学课件 第一章 热力学第一定律
- 07S906给水排水构筑物设计选用图化粪池
- IPC-6013中文版挠性印制板质量要求与性能规范汇编
- 青岛版小学二年级数学下册全册教案
- 干部人事档案专项审核认定表
- GB/T 9113-2010整体钢制管法兰
- 校长在评估反馈会上的表态发言稿(5篇)
- 班会之心理教育系列调适心态珍爱生命
- DLT50722023年火力发电厂保温油漆设计规程
评论
0/150
提交评论