顺序队的基本操作.doc

顺序队的基本操作.doc

ID:55916894

大小:121.00 KB

页数:9页

时间:2020-06-14

顺序队的基本操作.doc_第1页
顺序队的基本操作.doc_第2页
顺序队的基本操作.doc_第3页
顺序队的基本操作.doc_第4页
顺序队的基本操作.doc_第5页
资源描述:

《顺序队的基本操作.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、上机实验报告学院:计算机与信息技术学院专业:计算机科学与技术(师)课程名称:数据结构实验题目:顺序队的基本操作班级序号:师1班学号:201421012731学生:邓雪指导教师:红颖完成时间:2015年12月25号实验目的:1.熟悉掌握队的定义、结构及性质; 2.熟练掌握循环队列的操作及应用,掌握循环队列的入队和出队等基本操作。 3.加深对队列结构的理解,逐步培养解决实际问题的编程能力二、实验环境:Windows8.1MicrosoftVisualc++6.0三、实验容及要求:掌握队列的概念及性质,并建立顺序队,实

2、现如下功能:1.建立一个顺序队2.输出队3.求队长4.判队空5.取队头6.入队7.出队8.清空栈四、概要设计:1、通过循环,由键盘输入一串数据。创建并初始化一个顺序队。2、编写实现相关功能函数,完成子函数模块如下。3、调用子函数,实现菜单调用功能,完成顺序表的相关操作。main建队求队长出队取队顶入队清空队判队空五、代码#include#include#definemaxsize1024typedefintdatatype;//定义结构体typedefstruct{datat

3、ypedata[maxsize];intfront,rear;}sequeue;sequeue*sq;//建立顺序队sequeue*SET(){sequeue*sq;datatypex;sq=(sequeue*)malloc(sizeof(sequeue));sq->front=maxsize-1;sq->rear=maxsize-1;printf("请输入要存入的结点值(以0结尾)");scanf("%d",&x);while(x!=0){sq->rear=(sq->rear+1)%maxsize;sq->

4、data[sq->rear]=x;scanf("%d",&x);}printf("顺序队输入成功");returnsq;}//判队空intEMPTY(sequeue*sq){if(sq->rear==sq->front)return1;elsereturn0;}//输出voidPRINT(sequeue*sq){inti;if(EMPTY(sq))printf("sequeueisempty");else{i=(sq->front+1)%maxsize;while(i<=sq->rear){print

5、f("%d",sq->data[i]);i=(i+1)%maxsize;}}}//队长度intLENGTH(sequeue*sq){intcount=0,i;if(EMPTY(sq))returncount;else{i=(sq->front+1)%maxsize;while(i<=sq->rear){count++;i=(i+1)%maxsize;}returncount;}}//取队头datatypeFRONT(sequeue*sq){datatypex;if(EMPTY(sq)){printf("seque

6、ueisempty");returnNULL;}else{x=sq->data[(sq->front+1)%maxsize];returnx;}}//入队voidENQUEUE(sequeue*sq){datatypex;printf("请输入要插入的结点值");scanf("%d",&x);if(sq->front==(sq->rear+1)%maxsize){printf("sequeueisfull");exit(0);}else{sq->rear=(sq->rear+1)%maxsize;sq

7、->data[sq->rear]=x;printf("插入成功");}}//出队datatypeDEQUEUE(sequeue*sq){if(EMPTY(sq)){printf("sequeueisempty");returnNULL;}else{sq->front=(sq->front+1)%maxsize;return(sq->data[sq->front]);}}//置空队voidSETNULL(sequeue*sq){sq->front=maxsize-1;sq->rear=maxsize-1;}

8、//主函数voidmain(){sequeue;inta,p;printf("——————————————————————————————————");printf("1、建立队");printf("2、输出队");printf("3、队长度");printf("4、判队空");printf("5、取队头");printf("6、入队");

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

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

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