c语言出队函数,C语言实现顺序队列的初始化、入队、出队等操作(三)

队列是一种只能在队头删除、队尾插入的线性表,本文实现队列的顺序结构,使用一个结构体包含队头指针、队尾指针、队列的长度这三个成员。通过malloc函数为队列开辟一片内存,大小为100个单位(100*数据类型所占字节),将队头指针指向起始地址,队尾指针也指向起始地址。队列的删除操作:首先检查队列内的数据元素是否存在,如果不存在返回ERROR,存在的话,通过队头指针加一实现。队列的插入操作:首先检查队列空间是否还有剩余,如果没有则realloc,增加10个单位,在队尾指针处插入数据元素,然后队尾指针加一。

代码实现的功能是,往初始化队列插入五个数据元素:1,2,3,4,5,然后删除第一个元素。

编译器是vc++6.0,下面是具体代码:

#include #include #define QINITSIZE 100

#define QINCRECEMENT 10

#define STATUS int

#define null 0

#define QElemType int

#define OK 1

#define ERROR 0

typedef struct QueueType{

QElemType *front;

QElemType *rear;

int qsize;

}queue;

STATUS q_init(queue *q)

{

q->front = (QElemType *)malloc(QINITSIZE*sizeof(QElemType));

if(q

你可能感兴趣的:(c语言出队函数)