#include"c1.h"
typedef int QElemType;
#include"c3-4.h"
#include "QUEUE.h"
#include"LSqQueue.h"
void print(QElemType i){
printf("%d",i);
}
void main()
{
Status j;
int i=0,n=1l;
QElemType d;
SqQueue Q;
InitQueue(&Q);
printf("初始化队列后,队列空否?%u(1:空 0:否)\n",QueueEmpty(Q));
printf("请输入%d个整形队列元素:\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&d);
EnQueue(&Q,d);
}
printf("队列的长度为%d\n",QueueLength(Q));
printf("现在队列空否?%u(1:空 0:否)\n",QueueEmpty(Q));
printf("现在队列中的元素是\n");
QueueTraverse(Q,print);
for(i=1;i<=3;i++)
DeQueue(&Q,&d);
printf("由队头删除3个元素,最后一个元素为%d\n",d);
printf("现在队列中的元素值为%d\n");
QueueTraverse(Q,print);
j=GetHead(Q,&d);
if(j)
printf("现在队头元素为%d\n",d);
else
printf("无队头元素(空队列)\n",d);
for(i=1;i<=5;i++)
EnQueue(&Q,d);
printf("依次从队尾插入1~5,现在队列中的元素为:\n");
QueueTraverse(Q,print);
ClearQueue(&Q);
printf("清空队列后,队列空否?%u(1:空 0:否)\n",QueueEmpty(Q));
if(j)
printf("现在队头元素为%d\n",d);
else
printf("无队头元素(空队列)\n",d);
DestroyQueue(&Q);
}