队列:只允许在前端(队头)进行删除操作,在后端(队尾)进行插入操作,(先进先出)
实现银行摇号排队共功能
工程一共包含4个文件(由于代码不多,未分成头文件和实现)
1. Entity.h :声明线性表的元素的类型。可以是基本数据类型也可以是结构体
2. SeqQueue.h :普通的队列以及一般功能的实现
3. CycleQueue.h :循环队列以及功能的实现(实例)
4. main.c : 测试文件
操作:1.初始化队列
2.进队
3.出队
4.获取长度
5.获取第一个元素
Entity.h
typedef struct{
int num; //顾客编号
long time; //进入队列时间
} DATA;
main.c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "CycleQueue.h"
int num;//顾客编号
void add(CycQueue *q){//新增顾客排序
DATA data;
if(!CycQueueIsFull(q)){
data.num = ++ num;