/*
*檔名稱:1.cpp
*完成日期:2023年10月13日
*版本號:v1.0
*問題描述:定義順序環形佇列儲存結構,實現其基本運算,並完成測試。
要求:
1、標頭檔案sqqueue.h中定義資料結構並宣告用於完成基本運算的函式。對應基本運算的函式包括:
void initqueue(sqqueue *&q); //初始化順序環形佇列
void destroyqueue(sqqueue *&q); //銷毀順序環形佇列
bool queueempty(sqqueue *q); //判斷順序環形佇列是否為空
int queuelength(sqqueue *q); //返回佇列中元素個數,也稱佇列長度
bool enqueue(sqqueue *&q,elemtype e); //進隊
bool dequeue(sqqueue *&q,elemtype &e); //出隊
2、在sqqueue.cpp中實現這些函式
3、在main函式中完成測試,包括如下內容:
(1)初始化佇列q
(2)依次進佇列元素a,b,c
(3)判斷佇列是否為空
(4)出隊乙個元素
(5)輸出佇列中元素個數
(6)依次進佇列元素d,e,f
(7)輸出佇列中元素個數
(8)將佇列中所有元素刪除,並輸出序列
(9)釋放佇列
*輸入描述:無
*程式輸出:完成測試後的執行結果
*/
#include #include #define maxsize 100
typedef char elemtype;
typedef struct
sqqueue;
void initqueue(sqqueue *&q); //初始化順序環形佇列
void destroyqueue(sqqueue *&q); //銷毀順序環形佇列
bool queueempty(sqqueue *q); //判斷順序環形佇列是否為空
int queuelength(sqqueue *q); //返回佇列中元素個數,也稱佇列長度
bool enqueue(sqqueue *&q,elemtype e); //進隊
bool dequeue(sqqueue *&q,elemtype &e); //出隊
#include "sqqueue.h"
void initqueue(sqqueue *&q) //初始化順序環形佇列
void destroyqueue(sqqueue *&q) //銷毀順序環形佇列
bool queueempty(sqqueue *q) //判斷順序環形佇列是否為空
int queuelength(sqqueue *q) //返回佇列中元素個數,也稱佇列長度
bool enqueue(sqqueue *&q,elemtype e) //進隊
bool dequeue(sqqueue *&q,elemtype &e) //出隊
#include #include "sqqueue.h"
int main()
destroyqueue(q); //釋放佇列
printf("\n該佇列已銷毀\n");
知識點總結:
順序環形佇列的基本運算
心得體會:
通過建立演算法庫,加深了對順序環形佇列基本運算的理解,特別是順序隊與順序環形隊的區別,有效防止了「假溢位」等問題的出現;入隊出隊的地方加上了入隊出隊前的判斷,使程式結構更加嚴謹。
第七周專案1 建立順序環形佇列演算法庫
問題及 1 sqqueue.h ifndef sqqueue h included define sqqueue h included define maxsize 5 typedef char elemtype typedef struct sqqueue void initqueue sqque...
第七周 專案1 建立順序環形佇列演算法庫
main.cpp all right reserved 檔名稱 sqqueue.cpp 完成日期 2015年10月13日 19 26 版本號 v1.0 問題描述 建立順序環形佇列演算法庫 include include sqqueue.h int main printf n printf 9 釋放佇...
第七周專案1 建立順序環形佇列演算法庫
01.04.檔名稱 test.cpp 05.作 者 高露 06.完成日期 2015.10.16 07.版 本 號 v1.0 08.09.問題描述 定義順序環形佇列儲存結構,實現其基本運算,並完成測試。10.輸入描述 11.程式輸出 12.13.include 14.include sqqueue.h...