解: #include <stdio.h>
#include <math.h>
#define max 100
struct queue
{
int qdata[max];
int head,tail;
}*q;
int en(item,pq)
struct queue *pq;
int item;
{
if(((pq->tail+1)%max)==pq->head)
return 0;
else
{
pq->tail=(pq->tail+1)%max;
pq->qdata[pq->tail]=item;
return 1;
}
}
main()
{
int i,j;
q->head=max-1;
q->tail=max-1;
printf(“input item:”);
scanf(“%d”,&i);
while(i!=0)
{
j=en(i,q);
if(j==1) printf(“okn”);
else printf(“wrongn”);
printf(“input item:”);
scanf(“%d”,&i);
};
i=q->head;
While(i!=q->tail)
{
i=(++i)%max;
Printf(“%dn”,q->qdata[i]);
}
}
评论列表
文章目录