#include<iostream>
#include<cstdlib>
using namespace std;
#define max 100
#define overflow 0
#define error -1
#define ok 1
typedef struct {
int *base;
int front;
int rear;
}sqQueue;
int initQueue(sqQueue &q) //初始化
{
q.base=new int[max];
if(!q.base)exit(overflow);
q.front=q.rear=0;
return ok;
}
int Queuelength(sqQueue s) //求长度
{
return (s.rear-s.front+max)%max;
}
int EnQueue(sqQueue &q,int e) //入队列
{
if((q.rear+1)%max==q.front)
return error;
q.base[q.rear]=e;
q.rear=(q.rear+1)%max;
return ok;
}
int DeQueue(sqQueue &q) //删除队头元素
{
int e;
if(q.front==q.rear)return error;
e=q.base[q.front];
q.front=(q.front+1)%max;
return e;
}
int Gethead(sqQueue q)
{
if(q.front!=q.rear)
return q.base[q.front];
}
int main()
{
int a[10];
int i;
printf("输入6个元素\n");for( i=0;i<7;i++)cin>>a[i];
sqQueue q;
if(initQueue(q))printf("初始化成功\n");
for(i=0;i<7;i++)
{
q.base[q.rear++]=a[i];
}
for(q.front=0;q.front<q.rear;q.front++)
printf("%d ",q.base[q.front]);
}