日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

队列入队和出队程序演示

發布時間:2025/3/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 队列入队和出队程序演示 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <stdio.h> #include <string.h> #include <malloc.h>typedef struct Queue {int * pBase;int front;int rear;} QUEUE;void init(QUEUE *); bool en_queue(QUEUE *pQ, int val); //入隊 void traverse_queue(QUEUE * pQ); bool full_queue(QUEUE * pQ);bool out_queue(QUEUE *pQ, int *pVal); //出隊 *pVal用來保存出隊的元素 bool empty_queue(QUEUE *pQ); //判空int main(void) {QUEUE Q;int val; //保存出隊元素init(&Q);en_queue(&Q, 1);en_queue(&Q, 2);en_queue(&Q, 3);en_queue(&Q, 4);en_queue(&Q, 5);en_queue(&Q, 6);en_queue(&Q, 7);en_queue(&Q, 8);traverse_queue(&Q); //遍歷輸出if (out_queue(&Q, &val)) { //出隊printf("出隊成功 出隊元素 %d\n",val);//成功}else {printf("出隊失敗 出隊元素 %d\n", val);//失敗}traverse_queue(&Q); //遍歷輸出while (true){}return 0; }void init(QUEUE *pQ) {pQ->pBase = (int *)malloc(sizeof(int) * 6);pQ->front = 0;pQ->rear = 0; }//入隊 bool en_queue(QUEUE *pQ, int val) {if (full_queue(pQ)) {return false;}else {pQ->pBase[pQ->rear] = val;pQ->rear=(pQ->rear + 1) % 6;return true;}}//判斷隊列是不是滿了 bool full_queue(QUEUE * pQ) {if ( (pQ->rear + 1)%6==pQ->front) {return true;}else {return false;}}//遍歷輸出 void traverse_queue(QUEUE *pQ) {int i=pQ->front;while (i != pQ->rear) {printf("%d ", pQ->pBase[i]);i = (i + 1) % 6;}printf("\n");return; }//出隊 bool out_queue(QUEUE *pQ, int *pVal) {if (empty_queue(pQ)) {return false; }else {*pVal = pQ->pBase[pQ->front]; //隊列從頭部出隊,保存頭部出隊的元素pQ->front = (pQ->front + 1) % 6;} }//隊列判空 bool empty_queue(QUEUE *pQ) {if (pQ->front == pQ->rear) {return true;}else {return false;}}

總結

以上是生活随笔為你收集整理的队列入队和出队程序演示的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。