




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、自學(xué)考試計(jì)算機(jī)系列課程實(shí)踐性環(huán)節(jié)實(shí)驗(yàn)報(bào)告本課程名稱實(shí)驗(yàn)學(xué)期數(shù)據(jù)結(jié)構(gòu)2010至2011 學(xué)年第2學(xué)期年級(jí)大三專業(yè)通信工程學(xué)生姓名陳榕學(xué)號(hào)030409301749指導(dǎo)教師涂風(fēng)華實(shí)驗(yàn)最終成績(jī)重慶大學(xué)計(jì)算機(jī)學(xué)院制實(shí)驗(yàn)名稱單鏈表的插入和刪除實(shí)驗(yàn)時(shí)間2011年5月13號(hào)實(shí)驗(yàn)地點(diǎn)主樓第一軟件實(shí)驗(yàn)室課堂成績(jī)報(bào)告成績(jī)最終成績(jī)一、實(shí)驗(yàn)?zāi)康氖煜b6.0操作,要求單鏈表的數(shù)據(jù)域是字符串,且不允許重復(fù)的串插入表中;刪除操作 是數(shù)據(jù)輸入的字符串,先找到相應(yīng)的接點(diǎn),后刪除。第 1 頁(yè)、實(shí)驗(yàn)步驟(或程序)#defineTRUE 1#defineFALSE 0#defineOK 1#defineERROR 0#defineI
2、NFEASIBLE -1#defineOVERFLOW -2#defineLIST_INIT_SIZE 10#defineLIST_INCREMENT 2#defineStatus int#include<stdio.h>#include<stdlib.h>#include<time.h>typedefint ElemType;typedefstruct LNodeElemType data; struct LNode *next;LNode,*LinkList;Status InitLinkList(LinkList& L)/ 初始化鏈表L = (
3、LinkList)malloc( sizeof (LNode);L->next = NULL; return OK;int len)/向鏈表中隨機(jī)填充數(shù)據(jù)sizeof (LNode);Status FillLinkList(LinkList& L,srand(time(NULL);LinkList p;for (int i = len;i > 0; i-) p = (LinkList)malloc( p->data = rand()%100; p->next = L->next; L->next = p;return OK;Status Ascend
4、(LinkList& L,int len)/ 非遞減排序LinkList q;ElemType temp;for (int j = 0; j < len-1; j+) q = L->next;for (int k = 0; k < len-1; k+)if (q->data > q->next->data)temp = q->data; q->data = q->next->data; q->next->data = temp;q = q->next; return OK;/向鏈表中插入某個(gè)元素Stat
5、us LinkListlnsert(LinkList &L,int i,ElemType e)LinkList p,s;p = L;int j = 0;while (p && j < i-1)p = p->next; j+;if (!p | j > i-1)return ERROR;s = (LinkList)malloc( sizeof (LNode);s->data = e;s->next = p->next;p->next = s; return OK;/刪除鏈表中的某個(gè)元素Status LinkListDelete(Li
6、nkList &L,int i,ElemType &e)LinkList p,q;p = L;int j = 0;while (p->next && j < i-1)p = p->next;j+;if (!(p->next) | j > i-1) return ERROR;q = p->next; p->next = q->next; e = q->data;free(q); return OK;第 3 頁(yè)int LinkListLocate(LinkList &L,ElemType e) 置,否則返
7、回LinkList p;int j = 1;p = L_>next;while (p && p->data != e)p = p->next; j+;if (p && p->data = e) return j;else return 0;void PrintLinkList(LinkList &L,int len)LinkList p = L->next;for (int i = 0;i < len; i+)printf( "%dt" ,p->data); p = p->next;pu
8、tchar( 'n');/在單鏈表L中查找值為e的結(jié)點(diǎn),找到后返回其位/打印鏈表Status DestroyLinkList(LinkList& L,int len)LinkList p,q;p = L;while (p->next)q = p->next;p->next = q->next; free(q);free(L);return OK;/銷毀鏈表Lvoid main()LinkList La; ElemType e; int pos,Len_La;第 5 頁(yè)/*/*puts( "*以下為第題程序*");/確定La的長(zhǎng)
9、度printf( "La 的長(zhǎng)度為:"); scanf( "%d",&Len_La);/初始化Laif (InitLinkList(La)printf("初始化 La成功!n");system( "PAUSE');putchar( 'n');/向La中隨機(jī)添加元素并且非遞減排序if (FillLinkList(La,Len_La) && Ascend(La,Len_La)printf("向La中隨機(jī)添加元素并且非遞減排序成功!n");elseputs(&qu
10、ot;向La中添加元素失敗!");system( "PAUSE');putchar( 'n');/打印添加元素后的Laprintf("添加元素后的La為:n");PrintLinkList(La,Len_La);system( "PAUSE');putchar( 'n');/在La中第i個(gè)元素之前插入一個(gè)新結(jié)點(diǎn) printf("請(qǐng)輸入要插入新節(jié)點(diǎn)的位置:");scanf( "%d",&pos);printf("請(qǐng)輸入要插入新節(jié)點(diǎn)的值:&qu
11、ot;); scanf( "%d",&e);if (LinkListInsert(La,pos,e)printf("插入新節(jié)點(diǎn)成功!n");Len_La+;elseputs("插入新節(jié)點(diǎn)失敗!");system( "PAUSE'); putchar( 'n');/打印插入新節(jié)點(diǎn)后的Laprintf("插入新節(jié)點(diǎn)后的La為:n");PrintLinkList(La,Len_La); system( "PAUSE');putchar( 'n')
12、;/刪除La中的第i個(gè)元素結(jié)點(diǎn)printf("請(qǐng)輸入要?jiǎng)h除節(jié)點(diǎn)的位置:");scanf( "%d",&pos);if (LinkListDelete(La,pos,e)printf("刪除第個(gè)元素成功!n" ,pos,e); Len_La-;elseputs("刪除失敗!");system( "PAUSE');putchar( 'n');/打印刪除后的Laprintf("刪除節(jié)點(diǎn)后的La為:n");PrintLinkList(La,Len_La);sys
13、tem( "PAUSE');putchar( 'n');/在La中查找某結(jié)點(diǎn)并返回其位置 printf("請(qǐng)輸入要查找的節(jié)點(diǎn)的值:");scanf( "%d",&e);pos = LinkListLocate(La,e);if (pos)printf("值為啲節(jié)點(diǎn)的位置是:dn" ,e,pos); elseputs("查找的節(jié)點(diǎn)不存在!");system( "PAUSE'); putchar( 'n');三實(shí)驗(yàn)結(jié)果第 7 頁(yè)c * C: DoenjBeirit s and Sett ings 11面V.Si"建玄件Dftbug5- exe卄八F艾弟1葩桎序* 總的壬度為;36 囁心成功I 青採(cǎi)任意犍儲(chǔ)纟応.忝加廠素后旳站対:L362427319C9G7597739774G901549024909、曹功適入人威魅賽點(diǎn)犍養(yǎng)昔意is按21:2WI3第 8 頁(yè)第 # 頁(yè)入新節(jié)點(diǎn)后前"為:3269LJ3977
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 監(jiān)測(cè)設(shè)備使用管理辦法
- 成本收入入賬管理辦法
- 售后服務(wù)管理管理辦法
- 房間裝飾現(xiàn)場(chǎng)管理辦法
- 西安公共信息管理辦法
- 2025年?yáng)|北地區(qū)事業(yè)單位教師招聘信息技術(shù)學(xué)科專業(yè)知識(shí)試題卷
- 規(guī)劃管理辦法實(shí)施細(xì)則
- 2025年雅思考試閱讀專項(xiàng)模擬試卷:科技倫理與法律問(wèn)題
- 監(jiān)測(cè)部門日常管理辦法
- 西寧員工離職管理辦法
- 2022電波流速儀測(cè)流規(guī)程
- 夏季八防安全培訓(xùn)課件
- 皮亞杰認(rèn)知發(fā)展與教育
- 2025年進(jìn)山航天班考試題及答案
- 2025-2030中國(guó)匹克球市場(chǎng)前景預(yù)判與未來(lái)發(fā)展形勢(shì)分析研究報(bào)告
- 軟件工程倫理研究-深度研究
- 2025年貴州貴旅國(guó)際旅行服務(wù)有限公司招聘筆試參考題庫(kù)含答案解析
- (一模)2025屆安徽省“江南十?!备呷?lián)考英語(yǔ)試卷(含官方答案)
- 標(biāo)準(zhǔn)投資協(xié)議必要條款模板2025年
- 士官留隊(duì)申請(qǐng)書格式
- 2025年上半年社區(qū)居委會(huì)工作總結(jié)(3篇)
評(píng)論
0/150
提交評(píng)論