欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    [理科实验报告精品]线性表基本操作 实验报告.doc

    • 资源ID:4233277       资源大小:355.50KB        全文页数:20页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [理科实验报告精品]线性表基本操作 实验报告.doc

    院 系: 计算机科学学院 专 业: 计算机科学与技术 年 级: 课程名称: 数据结构 学 号: 姓 名: 指导教师: 2011年 03 月 26 日年级 班号 学号 专业计算机科学与技术 姓名实验名称 线性表基本操作实验类型设计型综合型创新型YES实验目的或要求 目的:实现线性表基本操作要求:1、实现线性表的插入,删除,求表长,查找e元素的前驱、后继,查找第i个位置的元素等基本操作。2、程序以菜单方式工作,其中一个选项控制退出程序,其他选项可循环进行选择。实验记录实验源代码:#include <stdio.h>#include <stdlib.h>#include <string.h>typedef structint num;char name20;int age;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.len<100)printf("Number:");scanf("%d",&L.elemi.num);printf("Name:");scanf("%s",L.elemi.name);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 but'y'and'n',please choice again!");getchar();scanf("%s",&con);elsecon='n'return 1;                    (写不完时,可另加附页。)实验记录   int output_sq(sqlist &L)int j;for(j=0;j<=(L.len-1);j+)printf("Number:%dn",L.elemj.num);printf("Name:%sn",L.elemj.name);printf("age:%dnn",L.elemj.age);return 1;int getelem(sqlist L) int i; printf("Which one do you want to getelem?"); scanf("%d",&i); i=i-1; printf("Number:%dn",L.elemi.num); printf("Name:%sn",L.elemi.name); printf("age:%dnn",L.elemi.age); return 1;                    (写不完时,可另加附页。)实验记录   void insert(sqlist &L) int i,j;printf("before which place do you want to insert?");scanf("%d",&i);for(j=(L.len-1);j>i-2;j-) L.elemj+1=L.elemj; printf("Number:");scanf("%d",&L.elemi-1.num);printf("Name:");scanf("%s",L.elemi-1.name);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;j<L.len-1;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.elemk.name,L.elemi.name); C.elemk.age=L.elemi.age; +k;+i;C.len+;elseC.elemk.num=R.elemj.num; strcpy(C.elemk.name,R.elemj.name); C.elemk.age=R.elemj.age; +k;+j;C.len+;while(i<=L.len-1) C.elemk.num=L.elemi.num; strcpy(C.elemk.name,L.elemi.name); C.elemk.age=L.elemi.age; +k;+i;C.len+;while(j<=R.len-1) C.elemk.num=R.elemj.num; strcpy(C.elemk.name,R.elemj.name); C.elemk.age=R.elemj.age; +k;+j;C.len+;                  (写不完时,可另加附页。)实验记录   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("* 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");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("which 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); 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(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;                     (写不完时,可另加附页。)实验记录   运行结果如下:显示菜单界面,用户根据自己的需求选择需要处理的选项。                    (写不完时,可另加附页。)实验记录   用户选择需要插入的线性表:输入元素信息:是否继续插入:                  待添加的隐藏文字内容2  (写不完时,可另加附页。)实验记录继续插入信息:                     (写不完时,可另加附页。)实验记录   用户往线性表1中添加元素:访问线性表1中元素并输出:                    (写不完时,可另加附页。)实验记录   访问线性表1中某元素:再创建一个线性表2:                    (写不完时,可另加附页。)实验记录将线性表1,2合并为一个新的线性表:删除线性表2中某一元素:                     (写不完时,可另加附页。)实验记录    访问合并的新线性表:                   (写不完时,可另加附页。)实验记录   退出:                    (写不完时,可另加附页。)组内分工(可选)实验结果分析及心得体会1. 用户根据自己的需求创建线性表,向其中添加元素(元素信息:学号,姓名,年龄);2. 用户可以访问线性表并输出其内容;3. 用户可向线性表中添加元素;4. 用户可以删除线性表中的元素;5. 用户可以访问查找线性表中的某个元素;6. 用户可以将创建的两个线性表合并成一个线性表并将其内容输出;用户自定义函数:插入函数 输出函数 取元素函数 删除函数 线性表合并函数 心得体会:通过这次试验,我掌握了线性表的创建,元素的插入,删除,访问,线性表的合并等操作,体会到指针的优越性,运用switch-case语句实现菜单的功能。 成绩评定教师签名: 年 月 日备注:源代码附后,源代码要求有注释说明

    注意事项

    本文([理科实验报告精品]线性表基本操作 实验报告.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开