第七周上機實踐專案3 負數把正數趕出佇列

2021-07-05 19:16:46 字數 1279 閱讀 7709

問題及**:

/*      

*檔名稱:test.cpp

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

*版本號:v1.0

/*

*問題描述:設從鍵盤輸入一整數序列a1,a2,…an,試程式設計實現:當ai>0時,ai進隊,當ai<0時,將隊首元素出隊,當ai=0時,表示輸入結束。要求將佇列處理成環形佇列,使用演算法庫中定義的資料型別及演算法,程式中只包括乙個函式(main函式),入隊和出隊等操作直接寫在main函式中即可。

當進隊出隊異常(如隊滿)時,要列印出錯資訊。

*輸入描述:

*程式輸出:

*/

#include #include #include "sqqueue.h"

int main()

else if (a<0)

else

break;

}return 0;

}

標頭檔案:sqqueue.h,包含定義順序環形佇列資料結構的**、巨集定義、要實現演算法的函式的宣告;

#ifndef sqqueue_h_included

#define sqqueue_h_included

#define maxsize 5

typedef int 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); //出隊

#endif // sqqueue_h_included

執行結果:

知識點總結:

利用了環形佇列演算法庫中定義的資料型別及演算法。

學習心得:

環形佇列的結構可以作為結構體的實現的乙個模式,有很大用途。

第七周 負數把正數趕出佇列

檔名稱 第七周專案 負數把正數趕出佇列 作 者 紀冬雪 完成日期 2015年10月20日 版 本 號 v1.0 問題描述 設從鍵盤輸入一整數序列a1,a2,an,試程式設計實現 當ai 0時,ai進隊,當ai 0時,將隊首元素出隊,當ai 0時,表示輸 入結束。要求將佇列處理成環形佇列,使用演算法庫...

第七周 負數把正數趕出佇列

煙台大學計算機與控制工程學院 作 者 郝環宇 完成日期 10.9 問題描述 設從鍵盤輸入一整數序列a1,a2,an,試程式設計實現 當ai 0時,ai進隊,當ai 0時,將隊首元素出隊,當ai 0時,表示輸入結束。要求將佇列處理成環形佇列,使用環形佇列演算法庫中定義的資料型別及演算法,程式中只包括乙...

第七周專案3 負數把正數趕出佇列

專案 負數把正數趕出佇列 設從鍵盤輸入一整數序列a1,a2,an,試程式設計實現 當ai 0時,ai進隊,當ai 0時,將隊首元素出隊,當ai 0時,表示輸入結束。要求將佇列處理成環形佇列,使用演算法庫中定義的資料型別及演算法,程式中只包括乙個函式 main函式 入隊和出隊等操作直接寫在main函式...