实验二之队列.docx

实验二之队列.docx

ID:51816903

大小:325.98 KB

页数:17页

时间:2020-03-16

实验二之队列.docx_第1页
实验二之队列.docx_第2页
实验二之队列.docx_第3页
实验二之队列.docx_第4页
实验二之队列.docx_第5页
资源描述:

《实验二之队列.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构实验报告评分满分——5分学号:2015111898姓名:许明华专业:计算机科学与技术知识范畴:栈与队列完成日期:2017年03月31日实验题目:基于循环队列的排队买票模拟程序实验内容及要求:编程建立循环队列存储结构,对排队买票过程进行模拟。要求程序在控制台屏幕上显示字符菜单:1.排队——输入新到达的买票人姓名,加入买票队列中;2.售票——排队队列中最前面的人购票成功,显示信息并将其从队列中删除;  3.查看队列——从队首到队尾依次列出所有正在排队买票人的姓名;4.结束——退出系统。“排队”时

2、,若队满,应提示等待(排队不成功);“售票”时,若队空,应提示无人排队(售票失败)。实验目的:掌握循环队列的基本操作。数据结构设计简要描述:序言:这是本学期第二个实验,实验主要目的是让我们熟悉循环队列的创建,入队,出队等操作数据结构设计:整个实验可分为一个大的模块,其中包含八个函数模块:菜单显示函数(Menu),初始化队列(InitQueue),添加购票人到队列(enQueue),删除购票成功的人(dlQueue),输出队列中所有人的信息(Putall_Queue),读取到文件函数(write_fi

3、le)以及判断队空和队满(Empty、Full)共八个函数模块,队列用结构体创建,其中包含整型(int)的队列容量n,队头指针top,队尾指针tail和队列计数变量c,以及string类型的数组elem;最后通过c++语言ofstream将购票人信息保存到文件中和c语言exit(0)退出系统,便完成了整个模拟买票系统的创建。算法设计简要描述:17/171,首先用结构体创建一个保存购票人的信息队列,为string类型;2,进行队列初始化,为string类型数组new一个动态内存,将队头和队尾置0,并将

4、从键盘输入的n值赋值给队列容量;3,判断队列为空或者为满,成立返回真,否则返回假;4,添加购票人信息,将新增的购票人信息添加到队列中去,为避免“假溢”以及搬动元素的操作,在入队时采用r=(r+1)%n,则数组在逻辑上成为圆环形,也即是采用循环队列;5,将购票成功的人信息显示出来并将其从队列中移除去,也是采用r=(r+1)%n循环队列来实现;6,输出显示所有正在购票人信息,先判断若没有人排队,则显示无人购票,否则采用循环队列输出所有人信息;7,采用ofstream将所有正在购票人信息读取到文件中去保存

5、;输入/输出设计简要描述:1,排队:输入购票人“姓名”,若队满,则输出“排队不成功,请等待!”,否则输出“成功加入到购票队列中去”;2,售票:调用售票函数时,直接输出排队队列中最前面的人购票成功,并输出其“编号和姓名”,并显示将其从队列中删除;3,查看所有队列:调用查看所有队列函数,输出所有正在排队的人的信息;4,写入到文件:输入文件名,若队为空,显示“无人购票,写入失败!”,否则输出成功将其写入到文件中去;5,退出系统:调用退出函数,成功推出系统;编程语言说明:1,编程软件,CodeBlocks1

6、6.0;2,代码均用C++语言实现;3,输入输出采用C++语言的cout和cin函数;4,文件读写采用ofstream类型;5,程序注释采用C/C++规范;主要函数说明:intMenu(void);//菜单显示函数17/17voidInitQueue(Queue,int);//初始化队列intenQueue(Queue,ElemTp);//在队列中添加新的乘客intdlQueue(Queue);//将购票成功的人从队列中删除voidPutall_Queue(Queue);//输出显示所有队列中的购票

7、人的信息boolEmpty(Queue);//判断队列是否为空boolFull(Queue);//判断队列是否满voidwrite_file(Queue);//读取到文件中程序测试简要报告:见截图:1,2,17/173,4,5,17/176,7,8,17/179,源程序代码:#include#include#include#include#includeusingnamespacestd;typedefs

8、tringElemTp;//ElemTPy一个string类型typedefstructnode{ElemTp*elem;intn;//队列容量inttop;//队头指针inttail;//队尾指针intc;//队列计数变量}*Queue;17/17//函数声明intMenu(void);//菜单显示函数voidInitQueue(Queue,int);//初始化队列intenQueue(Queue,ElemTp);//在队列中添加新的乘客intdlQueue(Que

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。