队列的顺序存储结构(循环队列)和操作实现。

 时间:2024-11-08 07:44:37

数据结构实验二队列的顺序存储结构(循环队列)和操作实现。

队列的顺序存储结构(循环队列)和操作实现。

方法/步骤

1、要求队列的顺序存储结构(循环队列)和操作实现。

队列的顺序存储结构(循环队列)和操作实现。

2、代码#include#include#defineOVERFLOW-2#defin娣定撰钠eMAXQSIZ呶蓟鹭毵E100/*队列的最大长度*/typedefstruct{int*base;//队列的元素空间头指针指示器intfront;intrear;/*尾指针指示器*/}SqQueue;intInitQueue(SqQueue&Q){//初始化操作Q.base=(int*)malloc(MAXQSIZE*sizeof(int));if(!Q.base)exit(OVERFLOW);Q.front=Q.rear=0;return1;}intEnQueue(SqQueue&Q){//入队操作inte;if((Q.rear+1)%MAXQSIZE==Q.front){printf("队列已满,不能进队\n");return-1;//满标志}printf("请输入进队元素:");scanf("%d",&e);Q.base[Q.rear]=e;//进队Q.rear=(Q.rear+1)%MAXQSIZE;//队尾指针后移return1;}intDeQueue(SqQueue&Q){//出队操作inte;if(Q.front==Q.rear){printf("队列已经为空\n");return-1;}e=Q.base[Q.front];//队头出队printf("%d出队\n",e);Q.front=(Q.front+1)%MAXQSIZE;//队头下标后移return1;}voidtip(){printf("*************\n");printf("*输入1进队*\n");printf("*输入2出队*\n");printf("*输入0退出*\n");printf("*请选择:*\n");printf("*************\n");}intmain(){intk;SqQueueQ;InitQueue(Q);//初始化tip();while(scanf("%d",&k),k){switch(k){case1:EnQueue(Q);tip();printf("操作完毕\n");break;case2:DeQueue(Q);tip();printf("操作完毕\n");break;}}return0;}

队列的顺序存储结构(循环队列)和操作实现。

3、运行结果

队列的顺序存储结构(循环队列)和操作实现。

兰花蜜枣如何制作的 形意十二形拳的搏击应用研究之龙形实战技法一 win7完美运行vb6.0(拖动控件迟缓等问题) 绿豆汤圆的做法 搜狗输入法怎么查生僻字
热门搜索
白蜡树图片 鸬鹚图片 人参果树图片 少数民族图片 狗尾草图片