[理科實(shí)驗(yàn)報(bào)告精品]線性表基本操作 實(shí)驗(yàn)報(bào)告_第1頁
[理科實(shí)驗(yàn)報(bào)告精品]線性表基本操作 實(shí)驗(yàn)報(bào)告_第2頁
[理科實(shí)驗(yàn)報(bào)告精品]線性表基本操作 實(shí)驗(yàn)報(bào)告_第3頁
[理科實(shí)驗(yàn)報(bào)告精品]線性表基本操作 實(shí)驗(yàn)報(bào)告_第4頁
[理科實(shí)驗(yàn)報(bào)告精品]線性表基本操作 實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、院 系: 計(jì)算機(jī)科學(xué)學(xué)院 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 年 級: 課程名稱: 數(shù)據(jù)結(jié)構(gòu) 學(xué) 號(hào): 姓 名: 指導(dǎo)教師: 2011年 03 月 26 日年級班號(hào)學(xué)號(hào)專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)姓名實(shí)驗(yàn)名稱線性表基本操作實(shí)驗(yàn)類型設(shè)計(jì)型綜合型創(chuàng)新型yes實(shí)驗(yàn)?zāi)康幕蛞竽康模簩?shí)現(xiàn)線性表基本操作要求:1、實(shí)現(xiàn)線性表的插入,刪除,求表長,查找e元素的前驅(qū)、后繼,查找第i個(gè)位置的元素等基本操作。2、程序以菜單方式工作,其中一個(gè)選項(xiàng)控制退出程序,其他選項(xiàng)可循環(huán)進(jìn)行選擇。實(shí)驗(yàn)記錄實(shí)驗(yàn)源代碼:#include #include #include typedef structint num;char name20;int a

2、ge;student;typedef structstudent *elem;int len;int maxsize;sqlist; void initlist_sq(sqlist &l)l.elem=(student*)malloc(100*sizeof(student);l.len=0;l.maxsize=100;(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 int listinsert_sq(sqlist &l)char con=y;int i=0;while(con=y)|(con=y)if(l.len100)printf(number:);scanf(%d,&l.elemi.num);prin

3、tf(name:);scanf(%s,l.);printf(age:);scanf(%d,&l.elemi.age);i+;l.len+; printf(do you want to contiune?(y/n);getchar();scanf(%s,&con); while(con!=y)&(con!=y)&(con!=n)&(con!=n)printf(you can not choice butyandn,please choice again!);getchar();scanf(%s,&con);elsecon=n;return 1;(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記

4、錄 int output_sq(sqlist &l)int j;for(j=0;ji-2;j-) l.elemj+1=l.elemj; printf(number:);scanf(%d,&l.elemi-1.num);printf(name:);scanf(%s,l.);printf(age:);scanf(%d,&l.elemi-1.age);l.len+; void listdelete(sqlist &l)int i,j;printf(which place do you want to delete?);scanf(%d,&i);for(j=i;jl.len-1

5、;j+);l.elemj=l.elemj+1;l.len-;(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 void mergelist(sqlist &l,sqlist &r,sqlist &c)int i,j,k;i=j=0;k=0;while(i=l.len-1)&(j=r.len-1)if(l.elemi.num=r.elemj.num) c.elemk.num=l.elemi.num; strcpy(c.,l.); c.elemk.age=l.elemi.age; +k;+i;c.len+;elsec.elemk.num=r.elemj.num; strc

6、py(c.,r.); c.elemk.age=r.elemj.age; +k;+j;c.len+;while(i=l.len-1) c.elemk.num=l.elemi.num; strcpy(c.,l.); c.elemk.age=l.elemi.age; +k;+i;c.len+;while(j=r.len-1) c.elemk.num=r.elemj.num; strcpy(c.,r.); c.elemk.age=r.elemj.age; +k;+j;c.len+;(

7、寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 int main() int choice ; sqlist l,r,c; initlist_sq(l); initlist_sq(r); initlist_sq(c); while(choice!=8) printf(*content*n);printf(* if you want to write a new list of student s information * choice 1 *n);printf(* if you want to visit zhe student information list * choice 2 *n);printf

8、(* if you want to add more to the student information list * choice 3 *n);printf(* if you want to delete some of the student information list * choice 4 *n);printf(* if you want to visit one of the student in zhe list * choice 5 *n);printf(* if you want to add the two list to a new one * choice 6 *n

9、);printf(* if you want to visit zhe list which include 2 list * choice 7 *n);printf(* if you want to quit this program * choice 8 *n);printf(*n);printf( n);printf(which do you want to choice? just type zhe number for choice); scanf(%d,&choice);(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 switch(choice)case 1: int m; printf(wh

10、ich list do you want to insert?); scanf(%d,&m); if(m=1) listinsert_sq(l); else listinsert_sq(r); break;case 2: int d; printf(which list do you want to out put?); scanf(%d,&d); if(d=1) output_sq(l); else output_sq(r);break;case 3: int a; printf(which list do you want to add one student?); scanf(%d,&a

11、); if(a=1) insert(l); else insert(r);break;case 4: int b; printf(which list do you want to delete one student?); scanf(%d,&b); if(b=1) listdelete(l); else listdelete(r); break;(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 case 5: int c; printf(which list do you want to getelem?); scanf(%d,&c); if(c=1) getelem(l); else getelem(

12、r);break; case 6: mergelist(l,r,c);printf(ok!n); break; case 7:output_sq(c);printf(ok!n);break;case 8:break;default:printf(n);printf(n);printf (please make zhe right choice!n);printf(n);printf(n);break;return 1; (寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 運(yùn)行結(jié)果如下:顯示菜單界面,用戶根據(jù)自己的需求選擇需要處理的選項(xiàng)。(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 用戶選擇需要插入的線性表:輸入元素信息

13、:是否繼續(xù)插入:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄繼續(xù)插入信息:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 用戶往線性表1中添加元素:訪問線性表1中元素并輸出:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 訪問線性表1中某元素:再創(chuàng)建一個(gè)線性表2:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄將線性表1,2合并為一個(gè)新的線性表:刪除線性表2中某一元素:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 訪問合并的新線性表:(寫不完時(shí),可另加附頁。)實(shí)驗(yàn)記錄 退出:(寫不完時(shí),可另加附頁。)組內(nèi)分工(可選)實(shí)驗(yàn)結(jié)果分析及心得體會(huì)1. 用戶根據(jù)自己的需求創(chuàng)建線性表,向其中添加元素(元素信息:學(xué)號(hào),姓名,年齡);2. 用戶可以訪問線性表并輸出其內(nèi)容;3. 用戶可向線性表中添加元素;4. 用戶可以刪除線性表中的

溫馨提示

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

最新文檔

評論

0/150

提交評論