順序表的操作實驗報告.doc_第1頁
順序表的操作實驗報告.doc_第2頁
順序表的操作實驗報告.doc_第3頁
順序表的操作實驗報告.doc_第4頁
順序表的操作實驗報告.doc_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

順序表的基本操作一、實驗?zāi)康?、復(fù)習(xí)C+語言程序設(shè)計中的知識。2、熟悉線性表的邏輯結(jié)構(gòu)。3、熟悉線性表的基本運算在兩種存儲結(jié)構(gòu)上的實現(xiàn)。4、掌握順序表的存儲結(jié)構(gòu)形式及其描述和基本運算的實現(xiàn)。5、熟練掌握動態(tài)鏈表結(jié)構(gòu)及有關(guān)算法的設(shè)計二、實驗內(nèi)容實現(xiàn)順序表的建立、取元素、修改元素、插入、刪除等順序表的基本操作?;疽螅?).依次從鍵盤讀入數(shù)據(jù),建立帶頭結(jié)點的順序表;(2).輸出順序表中的數(shù)據(jù)元素(3).根據(jù)指定條件能夠取元素和修改元素;(4).實現(xiàn)在指定位置插入和刪除元素的功能。三、實驗步驟、調(diào)試及輸出結(jié)果() . 數(shù)據(jù)結(jié)構(gòu)與核心算法的設(shè)計描述:#include #include /*順序表的定義:*/#define ListSize 100typedef struct int elemListSize;/*向量elem用于存放表結(jié)點*/ int length;/*當(dāng)前的表長度*/ SeqList;/*順序表的建立:*/void CreateList(SeqList *L,int n) int i; printf(please input n numbers:n); for(i=1;ielemi); L-length=n; /*順序表的打?。?/void PrintList(SeqList *L,int n) int i; printf(the sqlist isn); for(i=1;ielemi); printf(n); /*順序表的查找:*/int LocateList(SeqList *L,int x) int i; i=1; while (L-elemi)!=x) &(ielemi)=x) return(i); else return(0);/*順序表的插入:*/void InsertList(SeqList *L,int x,int i) int j; if (iL-length+1) printf(no insert position!n); else for(j=L-length;j=i;j-) L-elemj+1=L-elemj; L-elemi=x; L-length+; /*順序表的刪除:*/void DeleteList(SeqList *L,int i) int j; if (iL-length) printf(no delete position!n); else for(j=i;jlength)-1;j+) L-elemj=L-elemj+1; L-length-; void main() SeqList L;int i,x;int n=10;/*當(dāng)前順序表的長度*/L.length=0;CreateList(&L,n);/*建立順序表*/PrintList(&L,L.length);/*輸出順序表*/printf(input the research element:);scanf(%d,&x);i=LocateList(&L,x); /*順序表查找*/printf(the research position is %dn,i);printf(input the position of insert:);scanf(%d,&i);printf(input the value of insert:);scanf(%d,&x);InsertList(&L,x,i); /*順序表插入*/PrintList(&L,L.length);/*輸出順序表*/printf(input the position of delete:);scanf(%d,&i);DeleteList(&L,i);/*順序表刪除*/PrintList(&L,L.length); /*輸出順序表*/ (二). 調(diào)試及輸出結(jié)果測試數(shù)據(jù): 1、輸入n個數(shù); 2、輸出順序列表;3、順序表的查找;4.順序表的插入;5、順序表的刪除;數(shù)據(jù)測試如下截圖:四、實驗討論與總結(jié):通過這次寫實驗報告,我深切的理解了這門課的本質(zhì)。剛開始學(xué)這門課時,當(dāng)時還不清楚這門課程的目的,現(xiàn)在,我真正的理解了:數(shù)據(jù)結(jié)構(gòu)像是身體的骨骼。數(shù)據(jù)結(jié)構(gòu)是個框架,模型,抽象數(shù)據(jù)類型中列舉了各種操作,而所用的C+語言,將各種操作描述出來構(gòu)成算法。在這次設(shè)計的過程中,我知道了順序表是按順序存儲的,用了一維數(shù)組來存儲,但是,在執(zhí)行時出現(xiàn)了問題。后來問同學(xué),指出我的錯誤,不過獲益不少。我又重新整理思路,把順序表的基本操作寫好了。雖然走了很多彎路,但是讓我認識到,一定要創(chuàng)新,大膽,不能按照舊的思路去干新的事情。單鏈表寫起來簡單多了,這個很快就搞定了。但是細節(jié)上出了問題。比如說,有些變量的重復(fù)定義,有些變量又沒有定義,在調(diào)用函數(shù),就直接復(fù)制過來,沒有改參數(shù)通

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論