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

2021-07-05 07:06:00 字數 2141 閱讀 5486

問題描述:

採用程式的多檔案組織形式,在專案1的基礎上,建立標頭檔案lish.h(包含定義順序表結構的**、巨集定義、要實現演算法的函式的宣告)和原始檔function.cpp(包含實現各種演算法的函式的定義)

main.cpp 中的**

#include "list.h"

int main()

; createlist(sq,x,6);

displist(sq);

return 0;

}

function.cpp中的**

#include "list.h"

//用陣列建立線性表

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)

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

int locateelem(sqlist *l,elemtype e)

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

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

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

list.h中的**

#ifndef list_h_included

#define list_h_included

#include

using namespace std;

#include

#define maxsize 50

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_h_included

執行結果:

知識點總結:

邏輯序號和物理序號的轉化關係,熟練指標和引用的運用,以及此程式中明白指標的引用的原理。善於將抽象問題結合到社會實際生活中。從而更加形象生動的加深自己對問題的理解。

學習心得:

在今後的學習中。可以建立自己的演算法庫,在做類似的專案時,可以直接呼叫自己儲存的演算法。這樣以來可以大大提高效率。

第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...

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

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