本题要求实现循环队列操作集。
函数接口定义:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef int ElementType;
struct QueueRecord;
typedef struct QueueRecord *Queue;
//如果队列为空,返回1,否则返回0
int IsEmpty(Queue Q);
//如果队列满,返回1,否则返回0
int IsFull(Queue Q);
//创建队列,返回指向QueueRecord结构体的指针
Queue CreateQueue(int MaxElements);
//销毁队列
void DisposeQueue(Queue Q);
//清空队列
void MakeEmpty(Queue Q);
//入队(加入队尾)
void Enqueue(ElementType X, Queue Q);
//返回队头元素
ElementType Front(Queue Q);
//出队(删除队头元素)
void Dequeue(Queue Q);
//删除队头元素,并将该元素返回
ElementType FrontAndDequeue(Queue Q);
//返回队列长度(队列中有效元素的个数)
int Size(Queue Q);
//从0号位置开始输出数据区的所有元素。无效位置输出'X'
void show(Queue Q);
//队列结构体。