




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 昆明理工大学信息工程与自动化学院学生实验报告( 2011 2012 学年 第 1 学期 )课程名称:数据结构 开课实验室:信自楼444 2011年10月8日年级、专业、班学号姓名成绩实验项目名称线性表顺序存储运算的算法实现指导教师教师评语 教师签名: 年 月 日一、 实验题目 掌握线性表链式存储结构的c语言描述及运算算法的实现;体会last域在算法实现所起的作用;理解合理的存储结构设计与算法的存在的关系程序功能:1、主程序2、链表的建立3、链表的数据插入4、链表的数据删除5、链表的数据输出二、所用仪器、材料(设备名称、型号、规格等)兼容计算机一台visual c+三、实验方法、步骤 问题提出
2、 算法设计 编写程序 调试 运行 结果测试操作菜 单线性表的删除线性表的输出及表长线性表的输入线性表的置空线性表的查找线性表的插入四、实验过程原始记录(程序清单)#include<stdio.h>#include<stdlib.h>typedef int datatype; /* 设typedef(定义)datatype(数据类型)为int */#include <stdio.h>#include<stdlib.h> /包含清屏函数的类#include <malloc.h>#define max 300 / 线性表的最大长度设为300
3、typedef struct int datamax; int last; sequenlist; /*顺序表的名称sequenlist*/int caidan() /*菜单函数*/int c=0;printf("-顺序表的基本操作运算-n"); printf(" 1:线性表的置空 2:线性表的输入 n"); printf(" 3:线性表的输出 4:线性表的插入 n"); printf(" 5:线性表的查找 6:线性表的删除 n"); printf(" 0:退出系统 n"); printf(&q
4、uot;-n"); printf("请输入选项【0-6】: "); do scanf("%c",&c); while(!(c>='0'&&c<'7'); return c;void setnull(sequenlist *p) p->last=0; int input( sequenlist *p,int x)int i;/循环变量int n; /输入数据的个数printf("请输入要输入的数据个数:");scanf("%d",&a
5、mp;n);if(p->last>=max) printf("顺序表格已满,请退出运行"); for (i=1;i<=n;i+) printf("第%d个:",i);scanf("%d",&p->datai-1);p->last+;return (n-1);void output(sequenlist *p) printf("n顺序表的内容为:nn"); printf("表长为:%dn",p->last); int b; printf("表中
6、的元素为:n"); for(b=0;b<p->last;b+) printf("%d ",p->datab); printf("n");int insert(sequenlist *p,int x,int i) printf("输入要插入的元素位置:");scanf("%d",&i);printf("输入要插入的元素:");scanf("%d",&x);int j; if(i<1|i>p->last+1)print
7、f("选择插入的位置错误!"); return 0; if(p->last>=max) printf("顺序表格已满."); for(j=p->last-1;j>=i-1;j-)/从第i个结点开始后移 p->dataj+1=p->dataj; p->datai-1=x; p->last+;return (1);void search( sequenlist *p,int t) printf("输入要查找的位置:");scanf("%d",&t); int i;
8、 for(i=0;i<p->last;i+ ) if( i=t) printf("该元素为:%d",&p->datai); break; if (i=p->last ) printf("错误n"); void delete(sequenlist *p,int i) /删除 int j; if (i<1 | i>p->last) printf("非法位置!n"); exit(0); else for (j=i;j<=p->last;j+) p->dataj-1=p-&g
9、t;dataj; p->last-; void main()sequenlist *p;int key=1; int i,x=0;int t=0;p=(sequenlist *)malloc(sizeof(sequenlist); p->last=0;while(key)switch(caidan()case '1': setnull(p);break;case '2': input(p,x); output(p); break;case '3': output(p); break;case '4': insert(p,x,i); output(p); break;case '5': search(p,t);output(p); bre
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 夫妻离婚孩子协议书范本
- 人民币幼儿学前教育设计
- 上海南汇区公开招聘农村(村务)工作者笔试题含答案2024年
- 安徽铜陵2025年公开招聘农村党务(村务)工作者笔试题带答案分析
- 口语常用表达技巧课件
- 优化进餐管理
- 面部提升的自然方法与手法
- 天津外国语大学滨海外事学院《护理学基础(Ⅱ)》2023-2024学年第二学期期末试卷
- 宁波市江北区2024-2025学年初三下第四次(5月)月考生物试题含解析
- 手部护理书籍知识博览为养护
- 装配作业指导书
- 建设工程成本计划与控制课件(原)
- IPC-A-610国际标准中英文对照(doc 17)
- 《陕文投应聘表格》word版
- 建设工程围挡标准化管理图集(2022年版)
- (完整word版)中小学教育质量综合评价指标框架(试行)
- 《新概念英语》第一册单词表
- 半泽直树日语字幕台词(一)
- 拌和站地基承载力及抗倾覆计算书
- 最新公司客户订单流程管理制度
- 生物分离工程第四章膜分离技术.ppt
评论
0/150
提交评论