煙台大學計算機與控制工程學院
* 完成日期:2023年9月22日
* 問題及**
* 問題描述:(1)目的是要測試「建立線性表」的演算法createlist,為檢視建表的結果,需要實現「輸出線性表」的演算法displist。在研習displist中發現,要輸出線性表,還要判斷表是否為空,這樣,實現判斷線性表是否為空的演算法listempty成為必要。這樣,再加上main函式,這個程式由4個函式構成。main函式用於寫測試相關的**。
#include
#include
#define maxsize 50 //maxsize將用於後面定義儲存空間的大小
typedef
intelemtype;
//elemtype在不同場合可以根據問題的需要確定,在此取簡單的int
typedef
struct
sqlist;
//自定義函式宣告部分
void
createlist(sqlist *&l, elemtype a,
intn);
//用陣列建立線性表
void
displist(sqlist *l);
//輸出線性表displist(l)
bool
listempty(sqlist *l);
//判定是否為空表listempty(l)
//實現測試函式
intmain()
; createlist(sq, x, 6);
displist(sq);
return
0;
} //下面實現要測試的各個自定義函式
//用陣列建立線性表
void
createlist(sqlist *&l, elemtype a,
intn)
//輸出線性表displist(l)
void
displist(sqlist *l)
//判定是否為空表listempty(l)
bool
listempty(sqlist *l)
執行結果:
(2)在已經建立線性表的基礎上,求線性表的長度listlength、求線性表l中指定位置的某個資料元素getelem、查詢元素locateelem的演算法都可以實現了。就在原程式的基礎上增加:增加求線性表的長度listlength的函式並測試;增加求線性表l中指定位置的某個資料元素getelem的函式並測試;增加查詢元素locateelem的函式並測試
#include
#include
#define maxsize 50 //maxsize將用於後面定義儲存空間的大小
typedef
intelemtype;
//elemtype在不同場合可以根據問題的需要確定,在此取簡單的int
typedef
struct
sqlist;
//自定義函式宣告部分
void
createlist(sqlist *&l, elemtype a,
intn);
//用陣列建立線性表
void
displist(sqlist *l);
//輸出線性表displist(l)
//實現測試函式
intmain()
//下面實現要測試的各個自定義函式
//用陣列建立線性表
void
createlist(sqlist *&l, elemtype a,
intn)
//輸出線性表displist(l)
void
displist(sqlist *l) (
3)其餘
的4個基
本運算:
插入資料
元素li
stin
sert
、刪除數
據元素l
istd
elet
e、初始
化線性表
init
list
、銷毀線
性表de
stro
ylis
t都可以
同法完成
,請自行
安排實踐
路線。(
3)其餘
的4個基
本運算:
插入資料
元素li
stin
sert
、刪除數
據元素l
istd
elet
e、初始
化線性表
init
list
、銷毀線
性表de
stro
ylis
t都可以
同法完成
,請自行
安排實踐
路線。(3)其餘的4個基本運算:插入資料元素listinsert、刪除資料元素listdelete、初始化線性表initlist、銷毀線性表destroylist都可以同法完成,請自行安排實踐路線。
#include
#include
#define maxsize 50 //maxsize將用於後面定義儲存空間的大小
typedef
intelemtype;
//elemtype在不同場合可以根據問題的需要確定,在此取簡單的int
typedef
struct
sqlist;
//用陣列建立線性表
void
createlist(sqlist *&l, elemtype a,
intn)
//初始化線性表initlist(l)
void
initlist(sqlist *&l)
//引用型指標
//銷毀線性表destroylist(l)
void
destroylist(sqlist *&l)
//判定是否為空表listempty(l)
bool
listempty(sqlist *l)
//求線性表的長度listlength(l)
intlistlength(sqlist *l)
//輸出線性表displist(l)
void
displist(sqlist *l)
//求某個資料元素值getelem(l,i,e)
bool
getelem(sqlist *l,
inti,elemtype &e)
//按元素值查詢locateelem(l,e)
intlocateelem(sqlist *l, elemtype e)
//插入資料元素listinsert(l,i,e)
bool
listinsert(sqlist *&l,
inti,elemtype e)
//刪除資料元素listdelete(l,i,e)
bool
listdelete(sqlist *&l,
inti,elemtype &e)
intmain()
執行結果:
第四周 專案1
all right reserved.完成日期 2015年10月6日 版本號 v1.0 問題描述 定義單鏈表儲存結構,用頭插法和尾插法建立單鏈表,並顯示建立好以後的結果。輸入描述 無 程式輸出 頭插法後的資料排列和尾插法的資料排列 include include typedef int elemty...
第四周專案1
輸入描述 無 輸出描述 顯示頭插法和尾插法建立的單鏈表 include include typedef int elemtype typedef struct lnode 定義單鏈表結點型別 linklist void createlistf linklist l,elemtype a,int n ...
第四周專案二
檔名稱 array.cpp 作 者 李中意 完成日期 2014 年 3月 19 日 版本號 v1.0 輸入描述 無 include includeusing namespace std class void setb double y void setc double z double geta v...