構建乙個動態陣列,對陣列進行元素的插入,刪除,排序等操作。
#include
#include
#include
//包含exit函式
#include
struct arr
;void
init_arr
(struct arr * parr,
int length)
;//初始化
(struct arr * parr,
int val)
;//追加
bool insert_arr
(struct arr * parr,
int pos,
int val)
;//插入
bool delete_arr
(struct arr * parr,
int pos,
int*pval)
;//刪除
//int get();
bool is_empty
(struct arr * parr)
;//判斷是否為空
bool is_full
(struct arr * parr)
;//判斷是否滿
void
sort_arr
(struct arr *parr)
;//排序
void
show_arr
(struct arr * parr)
;//顯示
void
inversion_arr
(struct arr *parr)
;//倒置
intmain
(void
)else
show_arr
(&arr)
;printf
("\n");
inversion_arr
(&arr)
;printf
("倒置後的數為:\n");
show_arr
(&arr)
;printf
("\n");
sort_arr
(&arr)
;printf
("排序後的數為:\n");
show_arr
(&arr)
;printf
("\n");
return0;
}void
init_arr
(struct arr * parr,
int length)
else
return
;//函式終止
}bool is_empty
(struct arr * parr)
bool is_full
(struct arr * parr)
void
show_arr
(struct arr * parr)
else
printf
("\n");
}}(struct arr * parr,
int val)
bool insert_arr
(struct arr * parr,
int pos,
int val)
parr->pbase[pos-1]
= val;
(parr->cnt)++;
return true;
}bool delete_arr
(struct arr * parr,
int pos,
int*pval)
(parr->cnt)--;
return true;
}void
inversion_arr
(struct arr *parr)
return;}
void
sort_arr
(struct arr *parr)}}
}
連續儲存陣列的演算法
昨天學習了連續儲存陣列的演算法,我今天打算用c語言實現,雖然 有好多地方都不好 比如1 如何更正使用者的非法輸入,2 無法中斷追加,也就是說雖然陣列定義了6個元素,但是只想追加兩個元素,其餘的可通過插入的方式確定元素。但是心裡還是很爽。這種一下一下敲出來的,經過好多次執行,除錯,最後成功的感覺真是無...
連續儲存陣列
include include include struct arr void init arr struct arr parr,int length 初始化 struct arr parr,int val 追加 bool insert arr struct arr parr,int pos,int...
建立連續儲存陣列
2017年6月16日 08 45 55 資料結構 c 建立連續儲存陣列 功能 初始化 追加 插入 刪除 排序 是否空 是否滿 include include include typedef struct arr sa void init sa arr,int len void show sa arr...