第3周專案2 建設「順序表」演算法庫

2021-07-22 19:45:59 字數 2521 閱讀 7793

問題:

/*   

*檔名稱:專案2.cbp   

*作    者:陳光輝   

*完成日期:2023年9月18日   

*版 本 號:v1.0   

*   

*問題描述:請採用程式的多檔案組織形式,在專案1的基礎上,建立 

如上的兩個檔案,另外再建立乙個原始檔,編制main函 

數,完成相關的測試工作。   

*輸入描述:無   

*程式輸出:依據各個函式而定  

*/  

#include "list.h"  

//用陣列建立線性表

list.h
#ifndef list_h_included  

#define list_h_included  

#define maxsize 50  

#include #include typedef int elemtype;  

typedef struct  

sqlist;  

void createlist(sqlist *&l, elemtype a, int n);//用陣列建立線性表  

void initlist(sqlist *&l);//初始化線性表initlist(l)  

void destroylist(sqlist *&l);//銷毀線性表destroylist(l)  

bool listempty(sqlist *l);//判定是否為空表listempty(l)  

int listlength(sqlist *l);//求線性表的長度listlength(l)  

void displist(sqlist *l);//輸出線性表displist(l)  

bool getelem(sqlist *l,int i,elemtype &e);//求某個資料元素值getelem(l,i,e)  

int locateelem(sqlist *l, elemtype e);//按元素值查詢locateelem(l,e)  

bool listinsert(sqlist *&l,int i,elemtype e);//插入資料元素listinsert(l,i,e)  

bool listdelete(sqlist *&l,int i,elemtype &e);//刪除資料元素listdelete(l,i,e)#endif // list_h_included  

#endif

list.cpp
void createlist(sqlist *&l, elemtype a, int n)  

//初始化線性表initlist(l)  

void initlist(sqlist *&l)   //引用型指標  

//銷毀線性表destroylist(l)  

void destroylist(sqlist *&l)  

//判定是否為空表listempty(l)  

bool listempty(sqlist *l)  

//求線性表的長度listlength(l)  

int listlength(sqlist *l)  

//輸出線性表displist(l)  

void displist(sqlist *l)  

//求某個資料元素值getelem(l,i,e)  

bool getelem(sqlist *l,int i,elemtype &e)  

//按元素值查詢locateelem(l,e)  

int locateelem(sqlist *l, elemtype e)  

//插入資料元素listinsert(l,i,e)  

bool listinsert(sqlist *&l,int i,elemtype e)  

//刪除資料元素listdelete(l,i,e)  

bool listdelete(sqlist *&l,int i,elemtype &e)  

main.cpp
#include "list.h"  

int main()  

list.h是順序表的乙個演算法庫集合,裡面宣告了常用到的各個功能函式。

list.cpp對應list.h中宣告的各個功能函式,給出了各個功能函式的實現方法。

main.cpp中根據需要新增各個函式,以便實現相應功能。

執行結果:

知識點總結:

這個專案考察了我們對演算法庫的多檔案應用,有了演算法庫,就可以在任意問題時宣告「list.h」這個標頭檔案來解決問題了。

學習心得:

通過這個專案對程式的多檔案實行更加運用自如了。

第3周 專案2 建設「順序表」演算法庫

問題描述 採用程式的多檔案組織形式,在專案1的基礎上,建立標頭檔案lish.h 包含定義順序表結構的 巨集定義 要實現演算法的函式的宣告 和原始檔function.cpp 包含實現各種演算法的函式的定義 main.cpp 中的 include list.h int main createlist s...

第3周專案2 建設「順序表」演算法庫

檔名稱 專案2.cbp 作 者 孟琪琪 完成日期 2016年9月16日 版 本 號 v1.0 問題描述 請採用程式的多檔案組織形式,在專案1的基礎上,建立 如上的兩個檔案,另外再建立乙個原始檔,編制main函 數,完成相關的測試工作。輸入描述 無 程式輸出 依據各個函式而定 架構 list.h檔案 ...

第3周專案2 建設「順序表」演算法庫

問題及 檔名稱 2.cpp 作 者 王修文 完成日期 2016年9月17日 版 本 號 v1.0 問題描述 請採用程式的多檔案組織形式,在專案1的基礎上,建立 如上的兩個檔案,另外再建立乙個原始檔,編制main函 數,完成相關的測試工作。輸入描述 無 程式輸出 標頭檔案list.h define m...