软件技术基础实验四栈和队列的操作实现.pdf

上传人:g****s 文档编号:86087423 上传时间:2023-04-13 格式:PDF 页数:9 大小:319.55KB
返回 下载 相关 举报
软件技术基础实验四栈和队列的操作实现.pdf_第1页
第1页 / 共9页
软件技术基础实验四栈和队列的操作实现.pdf_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《软件技术基础实验四栈和队列的操作实现.pdf》由会员分享,可在线阅读,更多相关《软件技术基础实验四栈和队列的操作实现.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-优质-电子科技大学 电子工程 学院 标 准 实 验 报 告 (实验)课程名称 软件技术基础 学生姓名:学 号:指导教师:-优质-一、实验名称 实验四:栈和队列的操作实现 二、实验目的 理解栈和队列的基本概念,栈和队列操作的基本方法以及其编程实现。通过本实验的两个项目的编程、调试和运行结果的比较,分析栈和队列的差别。三、实验内容 1、设计一个容量为 4 的循环队列,编程实现如下操作,并显示各步骤操作后队列的内容:A、队列初始化为空;B、将 1、2、3 三个数据依次做入队操作;C、做两次出队操作(1、2 出队);D、将 4、5、6 三个数据依次做入队操作;E、将数据 7 做入队操作;2、设计一个

2、容量为 4 的顺序栈,编程实现如下操作,并显示各步骤操作后栈的内容:A、栈初始化为空;B、将 1、2、3 三个数据依次做入栈操作;C、做两次出栈操作;D、将 4、5、6 三个数据依次做入栈操作;E、将数据 7 做入栈操作;四、实验程序 1.循环队列程序#include#include#define true 1#define false 0#define maxnum 5 -优质-typedef struct int datamaxnum;int front;int rear;queuetype;void main()void initiatequeue(queuetype*q);int en

3、ter(queuetype*q,int x);int deletequeue(queuetype*q);void printqueue(queuetype*q);queuetype*q;q=(queuetype*)malloc(sizeof(queuetype);initiatequeue(q);enter(q,1);enter(q,2);enter(q,3);printf(入队操作后:n);printqueue(q);printf(n 两次出队操作后:n);deletequeue(q);deletequeue(q);printqueue(q);printf(n 三次入队操作后:n);ente

4、r(q,4);enter(q,5);enter(q,6);printqueue(q);printf(n 第四次入队操作后:n);-优质-enter(q,7);void initiatequeue(queuetype*q)/初始化队列 q-front=q-rear=0;int enter(queuetype*q,int x)/入队操作 if(q-rear)+1)%maxnum=q-front)printf(队列已满,不能进行入队操作n);return(false);else q-rear=(q-rear+1)%maxnum;q-dataq-rear=x;printf(成功插入%dn,x);ret

5、urn(true);int deletequeue(queuetype*q)/出队操作 if(q-rear=q-front)printf(队列已空n);return(false);else-优质-q-front=(q-front+1)%maxnum;printf(成功删除n);return(q-dataq-front);void printqueue(queuetype*q)/输出队列 int l;if(q-front=q-rear)printf(队列已空);return;l=q-front;printf(结果是n);while(1)l=(+l)%maxnum;printf(%dn,q-dat

6、al);if(l=q-rear)break;2.顺序栈程序#include#include#define true 1#define false 0#define maxnum 4-优质-typedef struct int datamaxnum;int top;stacktype;void main()void initiatestack(stacktype*s);int pushstack(stacktype*s,int x);int popstack(stacktype*s);int printstack(stacktype*s);stacktype*s;s=(stacktype*)ma

7、lloc(sizeof(stacktype);initiatestack(s);printf(入栈操作后:n);pushstack(s,1);pushstack(s,2);pushstack(s,3);printstack(s);printf(n 两次出栈操作后:n);popstack(s);popstack(s);printstack(s);printf(n 三次入栈操作后:n);pushstack(s,4);pushstack(s,5);pushstack(s,6);printstack(s);printf(n 第四次入栈操作后:n);-优质-pushstack(s,7);void ini

8、tiatestack(stacktype*s)/初始化 s-top=-1;int pushstack(stacktype*s,int x)/入栈操作 if(s-top=maxnum-1)printf(栈已满,不能进行入栈操作n);return(false);else s-top+;s-datas-top=x;return(true);int popstack(stacktype*s)/出栈操作 if(s-toptop-;return(s-datas-top+1);int printstack(stacktype*s)/输出 int i;if(s-top0)printf(栈为空n);return(false);printf(结果是:n);for(i=0;itop;i+)printf(%dn,s-datai);return(true);五、实验结果-优质-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 文案大全

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁