正在加载图片...
Q->base[Q->rear] Q->rear=(Q->rear+1)%MAXQSIZE return OK 功能:出队操作 输入:队列对象S的指针 输出:成功时返回OK、通过数据元素指针e返回队首元素的值 空队列时返回 ERROF 幸称水客水 水水本 int DeQueue (SqQueue * Q, Elem Type *e) if(Q->rear==Q->front return error *e=Q->base[Q->front] Q->front=(Q->front +1)%MAXQSIZE return maino ElemType *elem InitQueue(&que) End (&que,1) /*元素1进队列*/ EnQueue(&que,2);/*元素2进队列*/ EnQueue(&que, 3) /*元素3进队列*/ DeQueue(&que,&elem); printf("%d",elem);/*1出队列*/ DeQueue(&que,&elem); printf("%d",eem);/*2出队列*/ DeQueue(&que, &elem): printf (%d", elem) 队列*/ DeQueue(&que, &elem): printf("%d", elem) /*队列已空,由于未检查返回结果,取出的还是3,产生错误, 所以应检查返回结果,当返回结果为0K时访问elem才有意义*/Q->base[Q->rear]=e; Q->rear=(Q->rear+1)%MAXQSIZE; return OK; } /******************************************************************* ** 功能:出队操作 ** ** 输入:队列对象 S 的指针 ** ** 输出: 成功时返回 OK、通过数据元素指针 e 返回队首元素的值 ** ** 空队列时返回ERROR ** *******************************************************************/ int DeQueue(SqQueue *Q,ElemType *e) { if (Q->rear==Q->front) return ERROR; *e=Q->base[Q->front]; Q->front=(Q->front+1)%MAXQSIZE; return OK; } main() { ElemType *elem; SqQueue que; clrscr(); InitQueue(&que); EnQueue(&que,1); /*元素1进队列*/ EnQueue(&que,2); /*元素2进队列*/ EnQueue(&que,3); /*元素3进队列*/ DeQueue(&que,&elem); printf("%d",elem); /*1 出队列*/ DeQueue(&que,&elem); printf("%d",elem); /*2 出队列*/ DeQueue(&que,&elem); printf("%d",elem); /*3 出队列*/ DeQueue(&que,&elem); printf("%d",elem); /*队列已空,由于未检查返回结果,取出的还是3,产生错误, 所以应检查返回结果,当返回结果为OK时访问elem才有意义*/ }
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有