第7周專案2 建立鏈隊演算法庫

2021-08-09 04:59:59 字數 1780 閱讀 2558

問題及**:

/* 

* 檔名稱:cpp1.

* 作 者:薛瑞琪

* 完成日期:2017 年 10 月 11 日

* 版 本 號:v1.0

* * 問題描述: 鏈隊演算法庫採用程式的多檔案組織形式,包括兩個檔案:

標頭檔案:liqueue.h,包含定義鏈隊資料結構的**、巨集定義、要實現演算法的函式的宣告

原始檔:liqueue.cpp,包含實現各種演算法的函式的定義

建立如上的兩個檔案,在同一專案(project)中再建立乙個原始檔(如main.cpp),編制main函式,完成相關的測試工作。

* 輸入描述:無需輸入

* 程式輸出:實現各種演算法的函式的測試結果

*/

#include #include "liqueue.h"

int main()

printf("\n");

printf("(9)釋放鏈隊\n");

destroyqueue(q);

return 0;

}

#ifndef liqueue_h_included

#define liqueue_h_included

typedef char 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

#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) //出隊

執行結果:

知識點總結:

採用程式的多檔案組織形式,建設了「鏈隊」演算法庫。

學習心得:

鞏固了之前所學的程式的多檔案組織形式。

第7周 專案2 建立鏈隊演算法庫

1.標頭檔案 liqueue.h,包含定義鏈隊資料結構的 巨集定義 要實現演算法的函式的宣告 typedef char elemtype typedef struct qnode qnode 鏈隊資料結點型別定義 typedef struct liqueue 鏈隊型別定義 void initqueu...

第7周專案2 建立鏈隊演算法庫

檔名稱 h1.cpp 完成日期 2015年10月13日 版本號 code block 問題描述 定義佇列的鏈式儲存結構,實現其基本運算,並完成測試。輸入描述 無 程式輸出 隊表的結果 include include typedef char elemtype typedef struct qnode...

第7周專案2 建立鏈隊演算法庫

問題 檔名稱 專案2.cbp 作 者 王聰 完成日期 2015年10月15日 版 本 號 v1.0 問題描述 定義鏈佇列儲存結構,實現其基本運算,並完成測試。輸入描述 無 程式輸出 測試資料 架構 typedef struct qnode 資料節點 qnode typedef struct 鏈隊節點...