




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
課程題目:數(shù)據(jù)結(jié)構(gòu)試驗(yàn)學(xué)院:班級:姓名:學(xué)號:實(shí)驗(yàn)題目:線性表的應(yīng)用實(shí)驗(yàn)內(nèi)容:分?jǐn)?shù)統(tǒng)計(jì)實(shí)驗(yàn)?zāi)康模赫莆站€性表的概念及原理,運(yùn)用線性表的原理完成實(shí)驗(yàn)題目中的內(nèi)容。實(shí)驗(yàn)要求:為了使學(xué)生更好的掌握與理解課堂上老師所講的概念與原理,實(shí)驗(yàn)前每個(gè)學(xué)生要認(rèn)真預(yù)習(xí)所做的實(shí)驗(yàn)內(nèi)容及編寫源程序代碼(寫在紙上與盤中均可),以便在實(shí)驗(yàn)課中完成老師所布置的實(shí)驗(yàn)內(nèi)容。實(shí)驗(yàn)學(xué)時(shí):4學(xué)時(shí)設(shè)計(jì)原理:本實(shí)驗(yàn)的核心部分為對學(xué)生成績從兩個(gè)角度進(jìn)行分析,既對學(xué)生的成績進(jìn)行了排名、求出學(xué)生成績的平均分和分出學(xué)生成績的數(shù)值段。為了處理學(xué)生成績這些數(shù)據(jù),首先必須建立一個(gè)新的線性表,新表為空,然后經(jīng)由input函數(shù)程序的執(zhí)行使得學(xué)生的成績可以輸入到計(jì)算機(jī)中,從鍵盤輸入程序所提示的學(xué)生人數(shù)后,新線性表的長度得以確定,再通過循環(huán)命令語句的調(diào)用將全部學(xué)生的成績輸入。輸入后,調(diào)用output函數(shù)處理線性表中的數(shù)據(jù),通過調(diào)用條件語句和設(shè)置變量存儲次次數(shù)的累加,從而在屏幕上輸出各個(gè)分?jǐn)?shù)段的人數(shù)。這之后,通過冒泡排序法處理學(xué)生成績這些數(shù)據(jù),得出結(jié)果后,在調(diào)用循環(huán)語句命令將結(jié)果按順序輸出。然后再對這些數(shù)據(jù)進(jìn)行求平均值的運(yùn)算,處理后輸出。詳細(xì)程序清單及注釋說明:#include<stdio.h>#include<malloc.h>#definelist_init_size100#definelistincrement10typedefstruct { int*elem;//存儲空間基址 intlength;//當(dāng)前長度 intlistsize;//當(dāng)前分配的存儲空間(以sizeof(ElemType)為單位)}sqlist;voidinitlist_sq(sqlist&l) //創(chuàng)建一個(gè)空的線性表{ l.elem=(int*)malloc(list_init_size*sizeof(int)); l.length=0;//空表長度為0 l.listsize=list_init_size;//初始存儲容量}voidinput(sqlist&l) {//輸入學(xué)生的總?cè)藬?shù)和每個(gè)人的成績 inta,b,c;loop1:printf("輸入學(xué)生人數(shù):"); scanf("%d",&b); if(b<=0) { printf("輸入錯誤,請重新輸入!!\n"); gotoloop1; //輸入錯誤時(shí),重新輸入 } printf("\n"); l.length=l.length+b; //由輸入的值確定線性表的長度 for(a=0;a<b;a++){loop:printf("輸入第%d名學(xué)生的成績:",a+1);scanf("%d",&c); l.elem[a]=c; if(c<0||c>100) { printf("輸入錯誤,請重新輸入?。n"); gotoloop; //輸入錯誤時(shí),重新輸入 } }}voidoutput(sqlist&l) {//輸出學(xué)生的成績信息 printf("\n"); inti,a=0,q=0,w=0,e=0,r=0,t=0,y=0; for(i=0;i<l.length;i++) { a=l.elem[i]/10; switch(a) //對成績分段 { case10:q++;break; case9:w++;break; case8:e++;break; case7:r++;break; case6:t++;break; default:y++;break; } } printf("成績?yōu)?00有%d人\n",q); printf("成績?yōu)?0~99有%d人\n",w); printf("成績?yōu)?0~89有%d人\n",e); printf("成績?yōu)?0~79有%d人\n",r); printf("成績?yōu)?0~69有%d人\n",t); printf("不及格的有%d人\n\n",y);}voidorder(sqlist&l) {//對成績進(jìn)行排序 inti,j,k;for(i=0;i<l.length;i++) for(j=0;j<l.length-i;j++) if(l.elem[j]<l.elem[j+1]) { k=l.elem[j]; l.elem[j]=l.elem[j+1]; l.elem[j+1]=k; } printf("經(jīng)過排序:\n"); for(i=0;i<l.length;i++) { printf("第%d名成績?yōu)?%d\n",i+1,l.elem[i]); }}voidaverage(sqlist&l) {//求出平均成績 inti; floatk=0,j=0; for(i=0;i<l.length;i++) { j=j+l.elem[i]; } k=j/l.length; printf("平均分為:%5.5f\n",k);}voidmain(){ printf("分?jǐn)?shù)統(tǒng)計(jì)\n\n"); sqlistl; initlist_sq(l); input(l); output(l); order(l); average(l);}運(yùn)行與測試及結(jié)果:在輸入錯誤情況下:試驗(yàn)中所遇到的問題及解決辦法:=1\*GB3①、實(shí)驗(yàn)當(dāng)中曾經(jīng)出現(xiàn)數(shù)據(jù)結(jié)果為亂碼的現(xiàn)象,后經(jīng)查找,原因是兩個(gè)for循環(huán)當(dāng)中的變量i,j順序顛倒,從而出現(xiàn)了指針沒有指向相應(yīng)的數(shù)據(jù)結(jié)果,而是指向了未知位置的數(shù)據(jù)。在i,j順序調(diào)整好之后,程序恢復(fù)正常。=2\*GB3②、輸入的數(shù)據(jù)在排序過程中出現(xiàn)了錯誤,導(dǎo)致了數(shù)據(jù)是以亂序的形式輸出的,查找后,原因是排列數(shù)據(jù)的算法出現(xiàn)錯誤,導(dǎo)致系統(tǒng)無法正確的進(jìn)行排序。算法改正后,程序恢復(fù)正常。=3\*GB3③、求平均數(shù)時(shí),程序顯示亂碼,經(jīng)查找,在計(jì)算的分?jǐn)?shù)總和的循環(huán)求和算法中將
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 20840.99-2025互感器第99部分:術(shù)語
- 全國粵教版信息技術(shù)七年級下冊第二單元第九課《多媒體素材的獲取》教學(xué)設(shè)計(jì)
- 郴州市桂陽縣2025年一級建造師市政工程臨考沖刺試題含解析
- 2024年馬工學(xué)的前沿研究試題及答案
- 產(chǎn)褥期感染的護(hù)理
- 生態(tài)農(nóng)業(yè)推廣方案計(jì)劃
- 門診流程優(yōu)化與患者體驗(yàn)提升計(jì)劃
- 員工參與在決策中的作用計(jì)劃
- 全球氣候變化的國際合作試題及答案
- 團(tuán)隊(duì)中事協(xié)商決策計(jì)劃
- 成都設(shè)計(jì)咨詢集團(tuán)有限公司2025年社會公開招聘(19人)筆試參考題庫附帶答案詳解
- 《杰出企業(yè)家劉強(qiáng)東的傳奇人生》課件
- 數(shù)據(jù)中心運(yùn)維服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- 2025年廣東匯源通集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 2025湖北省建筑安全員-A證考試題庫及答案
- 餐飲業(yè)經(jīng)營權(quán)轉(zhuǎn)讓合同
- 解讀《干部教育培訓(xùn)工作條例》
- 紡織染整行業(yè)節(jié)能減排與染料優(yōu)化方案
- 《概率論與數(shù)理統(tǒng)計(jì)》課件 概率論
- 2024年河北省廊坊市公開招聘警務(wù)輔助人員(輔警)筆試專項(xiàng)訓(xùn)練題試卷(3)含答案
- 胃腸術(shù)后引流管護(hù)理
評論
0/150
提交評論