定义一个循环队列,并实现循环队列的进队操作c语言代码
时间: 2024-04-14 16:25:07 浏览: 131
C语言循环队列的代码实现
循环队列是一种基于数组实现的队列,它可以充分利用数组空间,实现队列的循环利用。下面是定义一个循环队列并实现进队操作的C语言代码:
```c
#define MAX_SIZE 10
typedef struct {
int data[MAX_SIZE];
int front; // 队头指针
int rear; // 队尾指针
} CircularQueue;
// 初始化循环队列
void initQueue(CircularQueue *queue) {
queue->front = 0;
queue->rear = 0;
}
// 判断队列是否为空
int isEmpty(CircularQueue *queue) {
return queue->front == queue->rear;
}
// 判断队列是否已满
int isFull(CircularQueue *queue) {
return (queue->rear + 1) % MAX_SIZE == queue->front;
}
// 入队操作
void enqueue(CircularQueue *queue, int value) {
if (isFull(queue)) {
printf("Queue is full, enqueue failed.\n");
return;
}
queue->data[queue->rear] = value;
queue->rear = (queue->rear + 1) % MAX_SIZE;
}
```
阅读全文