//循环队列的基本操作
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define MAX_SIZE 5
typedef struct {
int data[MAX_SIZE];
int front;
int rear;
} CircularQueue;
//初始化
void InitQueue(CircularQueue *q) {
q->front=q->rear=0;
}
//判断是否为空
int IsEmpty(CircularQueue *q) {
return q->front==q->rear;
}
//判断是否已满
int IsFull(CircularQueue *q) {
return ((q->rear+1)%MAX_SIZE==q->front);
}
//入队
int EnQueue(CircularQueue *q,int x) {
if (IsFull(q)){
printf("队列已满,无法入队!\n");
return 0;
}
q->data[q->rear]=x;
q->rear=(q->rear+1)%MAX_SIZE;
printf("元素 %d 入队成功!\n",x);
return 1;
}
C语言循环队列的基本操作
最新推荐文章于 2024-08-30 11:28:00 发布
本文介绍了如何使用C语言实现循环队列的基本操作,包括初始化、判断队列是否为空、是否已满、入队、出队和遍历。示例代码展示了如何创建一个固定大小的循环队列,并通过主函数进行交互式操作。
摘要由CSDN通过智能技术生成