**队列的操作**
#include<stdio.h>
#include<malloc.h>
#define MAXQSIZE 10
typedef struct
{
int *base;
int front;
int rear;
}SqQueue;
void InitQueue(SqQueue*Q)
{
Q->base=(int*)malloc(MAXQSIZE*sizeof(int));
Q->front=Q->rear=0;
}
void EnQueue(SqQueue*Q,int val)
{
Q->base[Q->rear]=val;
Q->rear=(Q->rear+1)%MAXQSIZE;
}
int DeQueue(SqQueue*Q)
{
int e;
e=Q->base[Q->front];
Q->front=(Q->front+1)%MAXQSIZE;
return e;
}
void main()
{
SqQueue S,T;
InitQueue(&S);
InitQueue(&T);
int i,a=0,b,c,d,e;
printf("请输入队列元素\n");
for(i=0;i<6;i++)
{
scanf("%d",&a);
EnQueue(&S,a);
}
e=DeQueue(&S);
T=S;
for(i=0;i<5;i++)
{
b=DeQueue(&S);
printf("%d",b);
}
printf("\n");
printf("请输入要增加的队列元素\n");
scanf("%d",&c);
EnQueue(&T,c);
for(i=0;i<6;i++)
{
d=DeQueue(&T);
printf("%d",d);
}
}