From a76367c17a66ff99d2a144235f4aba28caa0a6b9 Mon Sep 17 00:00:00 2001 From: ViolentAyang <76544389+ViolentAyang@users.noreply.github.com> Date: Sun, 20 Mar 2022 15:32:11 +0800 Subject: [PATCH] =?UTF-8?q?Create=20=E7=BA=BF=E6=80=A7=E9=98=9F=E5=88=97?= =?UTF-8?q?=E5=85=A5=E9=98=9F=E6=93=8D=E4=BD=9C.c?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 队列/线性队列入队操作.c | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 队列/线性队列入队操作.c diff --git a/队列/线性队列入队操作.c b/队列/线性队列入队操作.c new file mode 100644 index 0000000..3c5e524 --- /dev/null +++ b/队列/线性队列入队操作.c @@ -0,0 +1,42 @@ +#include +#include +#include +#define MaxSize 10 + +//栈是只允许在一段进行插入或删除操作的线性表 +//队列只允许在一端进行插入,在另一端进行删除的线性表 +typedef struct{ + int data[MaxSize]; + int front,rear; +}SqQueue; +//初始化队列 +void InitQUeue(SqQueue *S){ + S->front = S->rear = 0; +} +//判断队列是否为空 +bool QueueEmpty(SqQueue S){ + if(S.front==S.rear){ + return true; + }else{ + return false; + } +} +//入队操作 +bool EnQueue(SqQueue *S,int x){ + if(!QueueEmpty(*S)){ + return false; + } + S->data[S->rear] = x; + S->rear += 1; + return true; +} + +int main(){ + SqQueue S; + InitQUeue(&S); + printf("%d\n",QueueEmpty(S)); + EnQueue(&S,5); + printf("%d\n",QueueEmpty(S)); + printf("%d\n",S.data[S.rear-1]); + return 0; +}