Posted in 面试题 onApril 07, 2012
解: #include
#include
#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(“ok\n”);
else printf(“wrong\n”);
printf(“input item:”);
scanf(“%d”,&i);
};
i=q->head;
While(i!=q->tail)
{
i=(++i)%max;
Printf(“%d\n”,q->qdata[i]);
}
}
#include
#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(“ok\n”);
else printf(“wrong\n”);
printf(“input item:”);
scanf(“%d”,&i);
};
i=q->head;
While(i!=q->tail)
{
i=(++i)%max;
Printf(“%d\n”,q->qdata[i]);
}
}
利用指针变量实现队列的入队操作
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Tags in this post...
Reply on: @reply_date@
@reply_contents@