




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1實驗內(nèi)容或題目(1) 用結(jié)構(gòu)體描述一個字符型的單向鏈表。(2) 創(chuàng)建線性表;在線性表中插入元素、刪除元素;顯示線性表中所有元素的基本操作。(3) 用if語句設(shè)計一個選擇式菜單。線性表子系統(tǒng)*1建表*2插入*3刪除*4顯示*5查找*6求表長*0返回*2、實驗?zāi)康呐c要求(1) 掌握線性表的特點;(2) 掌握線性表順序存儲結(jié)構(gòu)和鏈式存儲結(jié)構(gòu)的基本運算;(3) 掌握線性表的創(chuàng)建,插入,刪除和顯示線性表中元素的基本操作。3、實驗步驟與源程序?qū)嶒灢襟E首先構(gòu)建出各個函數(shù)在主調(diào)函數(shù)main()函數(shù)中的作用以及返回值:CreatList()函數(shù)是用來建立線性表,In sList()函數(shù)用來插入結(jié)點元素,Del
2、List()函數(shù)用來刪除結(jié)點元素,ShowList()函數(shù)用來顯示線性表,SearchList()函數(shù)用來查找線性表元素,主函數(shù)main()用于菜單界面,方便操作。之后便是具體實現(xiàn)每個函數(shù)功能的細節(jié)。程序編好后經(jīng)過不斷地差錯改錯,最后得到正確的源程序。程序源代碼#in clude<>#in clude<>typedef struct linknodechar data;struct linknode *n ext;li nno de;linnode *head;int n;void CreateList()linnode *p,*s;int乙charx;n=0;z=1;
3、head=(li nnode *)malloc(sizeof(li nno de);p=head;printf("ntt請逐個輸入節(jié)點,以x'為結(jié)束標記!n");prin tf("n ”);while(z)prin tf("tt輸入一個字符數(shù)據(jù),并按回車: ");scan f("%c", &x);getchar();if(x!='x')s=(l innode *)malloc(sizeof(li nno de);n+;s->data=x;p_>n ext=s;s-> next
4、=NULL;p=s;else z=0;void In sList(i nt i,char x)linnode *s,*p;int j;p=head;j=10;while(p!=NULL&&j<i)j+;p=p->n ext;if(p!=NULL)s=(l innode *)malloc(sizeof(li nno de);s->data=x;s->n ext=p->n ext;p_>n ext=s;n+;n");else prin tf("ntt線性表為空或插入位置超出!void DelList(char x)linnod
5、e *p,*q;if(head=NULL)prin tf("ntt鏈表下溢!”);return;if(head-> next=NULL)prin tf("ntt線性表已為空!”);return;q=head;p=head->n ext;while(p!=NULL&&p->data!=x)q=p;p=p->n ext;if(p!=NULL)q_>n ext=p->n ext;free(p);n-;printf("ntt結(jié)點 c已經(jīng)被刪除!",x);else prin tf("ntt抱歉!沒有找到
6、您要刪除的結(jié)點。");void ShowList()linnode *p=head;prin tf("ntt顯示線性表的所有元素:”);if(head-> next=NULL|p=NULL)prin tf("ntt鏈表為空! ”);elseprin tf("ntt");while(p-> next!=NULL)prin tf("%5c",p-> next->data);p=p->n ext;void SearchList(char x)linnode *p;int i=1;if(head=NUL
7、L)prin tf("ntt鏈表下溢!”);return;if(head-> next=NULL)prin tf("ntt線性表為空,沒有任何節(jié)點!”);return;p=head->n ext;while(p!=NULL&&p->data!=x)p=p->n ext;i+;if(p!=NULL)”,i,x);printf("ntt在表的第d位上找到值為。的結(jié)點!elseprin tf("ntt抱歉!未找到值為。的結(jié)點! ",x);void mai n()int choice,i,j;char x;hea
8、d=NULL;j=1;while(j) prin tf("n");prin tf("ntt線性表子系統(tǒng)");printf("ntt*");prin tf("ntt*1建表*"prin tf("ntt*2插入*"prin tf("ntt*3刪除*"prin tf("ntt*4顯示*"prin tf("ntt*5查找*"prin tf("ntt*6求表長*"prin tf("ntt*0返回*"prin
9、 tf("ntt*);prin tf("ntt請選擇菜單號(0-6 ):");sea nf("%d",&choice);getchar();if(choice=1)CreateList();elseif(choice=2)i,x):"); printf("ntt請輸入插入的位置i和插入的數(shù)據(jù)(輸入格式:scan f("%d,%c",&i,& x);In sList(i,x);elseif(choice=3) prin tf("ntt請輸入要刪除的數(shù)值:");sc
10、an f("%c", &x);DelList(x);elseif(choice=4)if(head=NULL)prin tf("ntt請先建立線性表!");elseShowList();else if(choice=5) prin tf("ntt請輸入要查找的兀素:");scan f("%c", &x);SearchList(x); elseif(choice=6)prin tf("ntt線性表長度為:%d", n);else if(choice=0) j=0;elseprin
11、tf("ntt輸入錯誤!請重新輸入!");4、測試數(shù)據(jù)與實驗結(jié)果圖一建立一個線性表圖二線性表數(shù)據(jù)的插入圖三線性表數(shù)據(jù)的刪除圖四線性表數(shù)據(jù)的查找圖五求表長圖六返回5、結(jié)果分析與實驗體會在學(xué)過本節(jié)有關(guān)線性表的兩種存儲結(jié)構(gòu)的基礎(chǔ)操作后,做這個驗證性的實驗的焦 點便在于驗證各種操作的正確與否,在對照書上的線性表基本運算的實現(xiàn)的算法 思路和注意事項,結(jié)合老師上課強調(diào)的每種算法的注意重點,找出了原始程序的 幾個主要的錯誤點:1某些地方運用了 C+語言而不是C,如:每個函數(shù)在為申請一塊LinkNode類型的 存儲單元的操作,并將其地址復(fù)制給變量時:p=new LinkNode;而在C環(huán)境中應(yīng)為: p=( LinkList *)mallo
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)民致富種植策略方案
- 農(nóng)業(yè)技術(shù)推廣區(qū)域合作方案
- 中國污水處理行業(yè)報告
- 制藥行業(yè)生物制藥工藝優(yōu)化方案
- 辦公室裝修風險免責協(xié)議
- 垃圾焚燒發(fā)電股
- 電信行業(yè)網(wǎng)絡(luò)優(yōu)化與安全防護策略方案
- 項目可行性研究報告指南
- 季度營銷活動策劃方案
- 汽車銷售與服務(wù)營銷策略試題
- 人教版2024-2025學(xué)年數(shù)學(xué)八年級下學(xué)期 16.2二次根式的乘除法同步練習【基礎(chǔ)練】(含答案)
- 2025年山東省職教高考《英語》高頻必練考試題庫400題(含答案)
- 2025高考誓師大會校長講話:最后100天從“青銅”逆襲成“王者”
- 2024-2025學(xué)年第二學(xué)期國旗下講話稿及安排
- 2025年安徽審計職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫有答案
- 2024年甘肅省白銀市中考數(shù)學(xué)試卷(附答案)
- 煤礦機電維護工職業(yè)技能理論考試題庫150題(含答案)
- 《黑格爾哲學(xué)思想》課件
- 老年骨質(zhì)疏松性疼痛診療與管理中國專家共識2024解讀課件
- 金光修持法(含咒訣指印、步驟、利益說明)
- 新國標《出版物上數(shù)字用法》操作要點解析范文
評論
0/150
提交評論