微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

顺序结构循环队列的基本操作一进队,出队待优化

#include<stdio.h>#define ElemType int#include<malloc.h>#define MAXSIZE 10typedef struct{ ElemType *data; int front,rear;}Queue;typedef struct BitNode{ ElemType data; struct Bitree *Lchild,*Rchild;}BitNode;Queue Init_queue(Queue Q){ Q.data=(ElemType *)malloc(MAXSIZE*sizeof(ElemType)); Q.front=Q.rear=0; return Q;} Queue Enter_queue(Queue Q,ElemType e){ if((Q.rear+1)%MAXSIZE==Q.front){ printf("队满"); }else{ *(Q.data+Q.rear)=e; Q.rear=(Q.rear+1)%MAXSIZE; } return Q;}Queue Leave_queue(Queue Q){ ElemType e; if(Q.rear==Q.front){ printf("队空"); }else{ printf("eo"); e=*(Q.data+Q.front); printf("%d出队\n",e); Q.front=(Q.front+1)%MAXSIZE; } return Q;}int main(){ Queue Q; int e,a; Q=Init_queue(Q); printf("请输入入队的数:\n"); scanf("%d",&e); while(e!=-1){ Q=Enter_queue(Q,e); scanf("%d",&e); } while(*(Q.data+Q.front)){ Q=Leave_queue(Q); } return 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐