第7周專案4 佇列陣列

2021-08-09 11:10:33 字數 2011 閱讀 5628

/*

*all rights reserved.

*檔名稱:dsitem7-3.cpp

*作 者:於子淇

*完成日期:2023年10月17日

*版 本 號:code::blocks 13.12

* *問題描述:建立10個佇列,分別編號為0-9(處理為佇列陣列,編號即下標)。輸入若干個正整數,以數字0作為結束。

*設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。

*要求將佇列處理成鏈式佇列,使用鏈式佇列演算法庫中定義的資料型別及演算法,程式中只包括乙個函式(main函式),入隊和出隊等操作直接在main函式中呼叫即可。

*輸入描述:70

5990

7267

8880

6429

9718

8340130

*程式輸出:見程式執行結果演示

*/

liqueue.h

#ifndef liqueue_h_included

#define liqueue_h_included

typedef

int elemtype;

typedef

struct qnode

qnode; //鏈隊資料結點型別定義

typedef

struct

liqueue; //鏈隊型別定義

void initqueue(liqueue *&q); //初始化鏈隊

void destroyqueue(liqueue *&q); //銷毀鏈隊

bool queueempty(liqueue *q); //判斷鏈隊是否為空

int queuelength(liqueue *q); //返回佇列中資料元素個數

void enqueue(liqueue *&q,elemtype e); //入隊

bool dequeue(liqueue *&q,elemtype &e); //出隊

#endif // liqueue_h_included

liqueue.cpp

#include

#include

#include

"liqueue.h"

void initqueue(liqueue *&q) //初始化鏈隊

void destroyqueue(liqueue *&q) //銷毀鏈隊

}free(p);

free(q); //釋放鏈隊節點占用空間

}bool queueempty(liqueue *q) //判斷鏈隊是否為空

int queuelength(liqueue *q) //返回佇列中資料元素個數

return(n);

}void enqueue(liqueue *&q,elemtype e) //入隊

}bool dequeue(liqueue *&q,elemtype &e) //出隊

main.cpp

#include 

#include

#include "liqueue.h"

#define n 10

int main()

//輸出各個佇列

printf("按個位數整理到各個佇列中後,各隊列出隊的結果是: \n");

for (i=0; iprintf("qu[%d]: ", i);

while(!queueempty(qu[i]))

printf("\n");

}//銷毀各個佇列

for (i=0; ireturn

0;}

程式執行結果演示:

第7周 專案4 佇列陣列

問題描述及 煙台大學計控學院 作 者 楊徵 完成日期 2015年10月14日 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。要求將佇列處理成鏈式佇...

第7周 專案4 佇列陣列

檔名稱 1.pp 完成日期 2015年10月16日 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。include include typedef ...

第7周專案4 佇列陣列

問題及 all?rights?reserved.檔名稱 cpp1.cpp 完成日期 2015年12月18日 版本號 v1.0 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中...