下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
實驗01順序表的基本操作實驗學(xué)時:2學(xué)時實驗類型:上機背景知識:順序表的插入、刪除及應(yīng)用。目的要求:1.掌握順序存儲結(jié)構(gòu)的特點。2.掌握順序存儲結(jié)構(gòu)的常見算法。實驗內(nèi)容:編寫一個完整的程序,實現(xiàn)順序表的生成、插入、刪除、輸出等基本運算。(1)建立一個順序表,含有n個數(shù)據(jù)元素。(2)輸出順序表。在順序表中刪除值為x的結(jié)點或者刪除給定位置i的結(jié)點。實現(xiàn)把該表中所有奇數(shù)排在偶數(shù)之前,即表的前面為奇數(shù),后面為偶數(shù)。(5)輸入整型元素序列,利用有序表插入算法建立一個有序表。*利用算法5建立兩個非遞減有序表A和B,并把它們合并成一個非遞減有序表C。在主函數(shù)中設(shè)計一個簡單的菜單,分別測試上述算法。(8)*綜合訓(xùn)練:利用順序表實現(xiàn)一個班級學(xué)生信息管理(數(shù)據(jù)錄入、插入、刪除、排序、查找等)。實驗說明:1請構(gòu)建多文件程序,算法1至算法6對應(yīng)的函數(shù)原型聲明存放在頭文件SqList.h中,對應(yīng)的函數(shù)實現(xiàn)存放在源文件SqList.c中;main()函數(shù)存放在另一個源文件中,該文件包含頭文件SqList.h即可。2.類型定義#defineMAXSIZE100//表中元素的最大個數(shù)typedefintElemType;//元素類型typedefstruct{ElemType*elem;//線性表intlength;//表的實際長度intlistsize;//當(dāng)前分配的存儲容量}SqList;//順序表的類型名3.建立順序表時可利用隨機函數(shù)自動產(chǎn)生數(shù)據(jù)。注意問題:1、插入、刪除時元素的移動原因、方向及先后順序。2、理解函數(shù)形參與實參的傳遞關(guān)系。部分源代碼:DS.h#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>#defineTRUE1#defineFALSE0#defineOK1#defineERROR0typedefintStatus;SqList.h#ifndefSQLIST_H_INCLUDED#defineSQLIST_H_INCLUDED#include"DS.h"typedefintElemType;typedefstruct{ElemType*elem;intlength;intlistsize;}SqList;voidmenu();StatusInitList_Sq(SqList&L,intn);/*初始化順序表*/StatusCreateList_Sq(SqList&L);/*建立順序表*/voidPrintList_Sq(SqListL);/*輸出順序表*/StatusDeleteList_Sq(SqList&L,inti,ElemType&e);/刪除第i個元素*/StatusDeleteListX_Sq(SqList&L,ElemTypex);/刪除值為x的元素*/StatusAdjustList_Sq(SqList&L);/*奇數(shù)排在偶數(shù)之前*/StatusOrderList_sq(SqList&L,intn);/*插入法生成遞增有序表*/voidMergeList_Sq(SqListLa,SqListLb,SqList&Lc);/*兩個非遞減有序表A和B,并把它們合并成一個非遞減有序表C*/#endif//SQLIST_H_INCLUDEDSqList.cpp#include"SqList.h"voidmenu(){printf("\t\t\t順序表基本操作\n\n");printf("\t\t\t1.建立順序表\n");printf("\t\t\t2.遍歷順序表\n");printf("\t\t\t3刪除第i個元素\n");printf("\t\t\t4刪除值為x的元素\n");printf("\t\t\t5.奇數(shù)排在偶數(shù)之前\n");printf("\t\t\t6插入法生成遞增有序表\n");printf("\t\t\t7?兩個非遞減有序表La和Lb合并成非遞減有序表Lc\n");printf("\t\t\t0.退出\n\n”);}/*初始化順序表*/StatusInitList_Sq(SqList&L,intn){L.elem=(ElemType*)malloc(n*sizeof(ElemType));if(!L.elem)exit(OVERFLOW);L.length=0;L.listsize=n;returnOK;}/*建立順序表*/StatusCreateList_Sq(SqList&L){}/*輸出順序表*/voidPrintList_Sq(SqListL){}/*刪除第i個元素*/StatusDeleteList_Sq(SqList&L,inti,ElemType&e){/*刪除值為x的元素*/StatusDeleteListX_Sq(SqList&L,ElemTypex){}/*奇數(shù)排在偶數(shù)之前*/StatusAdjustList_Sq(SqList&L){}/*插入法生成遞增有序表*/StatusOrderList_sq(SqList&L,intn){}/*兩個非遞減有序表A和B,并把它們合并成一個非遞減有序表C*/voidMergeList_Sq(SqListLa,SqListLb,SqList&Lc){}main.cpp#include"SqList.h"intmain(){intchoice,n,i,x;SqListL,La,Lb,Lc;while(1){menu();printf("選擇你的操作:");scanf("%d",&choice);switch(choice){case1:if(CreateList_Sq(L))printf("順序表創(chuàng)建成珈n");elseprintf("順序表創(chuàng)建失敗\n");break;case2:PrintList_Sq(L);break;case3:printf("請輸入刪除元素的位置:");scanf("%d",&i);if(DeleteList_Sq(L,i,x))printf("被刪除元素值為:%d\n",x);elseprintf(”刪除失敗\n");break;case4:printf(”請輸入刪除元素值:");scanf("%d",&x);if(DeleteListX_Sq(L,x))printf("刪除成功\n");elseprintf(”刪除失敗\n");PrintList_Sq(L);break;case5:AdjustList_Sq(L);printf(噺鏈表為:\n");PrintList_Sq(L);break;case6:printf("請輸入順序表長度:");scanf("%d",&n);if(OrderList_sq(L,n)){printf("值有序順序表為:\n");PrintList_Sq(L);}elseprintf("順序表創(chuàng)建失敗\n");break;case7:printf("請輸入順序表La的長度:");scanf("%d",&n);OrderList_sq(La,n);printf("請輸入順序表Lb的
溫馨提示
- 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業(yè)廠房人防設(shè)備施工協(xié)議
- 礦井?dāng)?shù)字化排水系統(tǒng)改造協(xié)議
- 農(nóng)田灌溉管網(wǎng)新建項目合同
- 農(nóng)業(yè)設(shè)施監(jiān)理協(xié)議
- 城市供電機械租賃協(xié)議
- 銀行窗口禮儀聘用協(xié)議
- 人力資源招聘合同執(zhí)行策略
- 玻璃制造設(shè)備租賃協(xié)議
- 鄉(xiāng)鎮(zhèn)文體活動安全與風(fēng)險管理
- 住宅小區(qū)消防工程安裝協(xié)議
- 體驗民間藝術(shù)表演 課件 -2024-2025學(xué)年贛美版(2024)初中美術(shù)七年級上冊
- 《自制信封》教學(xué)設(shè)計-小學(xué)勞動蘇教版《勞動與技術(shù)》三年級上冊
- 信息化系統(tǒng)安全運維服務(wù)方案三篇
- 通信工程專業(yè)導(dǎo)論(第6-10章)
- Unit 1 (Section A 1a-2) 教學(xué)設(shè)計 2024-2025學(xué)年人教版(2024)七年級英語上冊
- 新教科版五年級上冊科學(xué)全冊課時練課件
- Kubernetes 持久化存儲方案選擇-從入門到評估
- SMP-04-013-00 藥品受托企業(yè)審計評估管理規(guī)程
- 小學(xué)一年級上冊數(shù)學(xué)練習(xí)題5篇
- 2024年貴州文化和旅游廳事業(yè)單位筆試真題
- 《人民的名義》課件
評論
0/150
提交評論