數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會_第1頁
數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會_第2頁
數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會_第3頁
數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會_第4頁
數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——數(shù)據(jù)結(jié)構(gòu)試驗報告及心得體會

2023~2023第一學(xué)期數(shù)據(jù)結(jié)構(gòu)試驗報告

班級:信管一班

學(xué)號:202351018姓名:史孟晨

1

試驗報告題目及要求

一、試驗題目

設(shè)某班級有M(6)名學(xué)生,本學(xué)期共開設(shè)N(3)門課程,要求實現(xiàn)并修改如下程序(算法)。

1.輸入學(xué)生的學(xué)號、姓名和N門課程的成績(輸入提醒和輸出顯示使用漢字系統(tǒng)),

輸出試驗結(jié)果。(15分)

2.計算每個學(xué)生本學(xué)期N門課程的總分,輸出總分和N門課程成績排在前3名學(xué)

生的學(xué)號、姓名和成績。

3.按學(xué)生總分和N門課程成績關(guān)鍵字升序排列名次,總分一致者同名次。

二、試驗要求

1.修改算法。將奇偶排序算法升序改為降序。(15分)

2.用選擇排序、冒泡排序、插入排序分別替換奇偶排序算法,并將升序算法修改為

降序算法;。(45分))

3.編譯、鏈接以上算法,按要求寫出試驗報告(25)。

4.修改后算法的所有語句必需加下劃線,沒做修改語句保持按原樣不動。5.用A4紙打印輸出試驗報告。

三、試驗報告說明

試驗數(shù)據(jù)可自定義,每種排序算法數(shù)據(jù)要求均不重復(fù)。(1)試驗題目:《N門課程學(xué)生成績名次排序算法實現(xiàn)》;

(2)試驗?zāi)康模喊盐崭鞣N排序算法的基本思想、試驗方法和驗證算法的確鑿性;(3)試驗要求:對算法進(jìn)行上機(jī)編譯、鏈接、運(yùn)行;(4)試驗環(huán)境(WindowsXP-sp3,Visualc++);(5)試驗算法(給出四種排序算法修改后的全部清單);(6)試驗結(jié)果(四種排序算法模擬運(yùn)行后的試驗結(jié)果);(7)試驗體會(文字說明本試驗成功或不足之處)。

2

三、試驗源程序(算法)

Score.c

#include\#include\#defineM6#defineN3structstudent{charname[10];intnumber;

intscore[N+1];/*score[N]為總分,score[0]-score[2]為學(xué)科成績*/}stu[M];

voidchangesort(structstudenta[],intn,intj){intflag=1,i;structstudenttemp;while(flag){flag=0;

for(i=1;ia[i+1].score[j]){temp=a[i];a[i]=a[i+1];a[i+1]=temp;flag=1;}

for(i=0;ia[i+1].score[j])

3

{temp=a[i];a[i]=a[i+1];a[i+1]=temp;flag=1;}}}

voidprint_score(structstudenta[],intn,intj){inti,k;

printf(“奇偶交換成績%d排序表\printf(\

printf(\名次學(xué)號姓名分?jǐn)?shù)\\n\k=1;

for(i=0;k0

printf(\printf(\printf(\printf(\printf(\}}main()

{inti,j,k;

for(i=0;i0

printf(\

printf(\

printf(\

for(j=0;j

print_score(stu,M,1);/*輸出離散數(shù)學(xué)前3名同學(xué)成績*/changesort(stu,M,2);/*對大學(xué)英語成績進(jìn)行排序*/print_score(stu,M,2);/*輸出大學(xué)英語前3名同學(xué)成績*/}

源代碼結(jié)果:

請輸入第1名學(xué)生分?jǐn)?shù):姓名:史孟晨編號:01數(shù)據(jù)結(jié)構(gòu):87離散數(shù)學(xué):90大學(xué)英語:78

請輸入第2名學(xué)生分?jǐn)?shù):姓名:袁欣編號:02數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):80

大學(xué)英語:92

請輸入第3名學(xué)生分?jǐn)?shù):姓名:趙宇編號:03數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76

大學(xué)英語:95

請輸入第4名學(xué)生分?jǐn)?shù):姓名:滕芷編號:04數(shù)據(jù)結(jié)構(gòu):79離散數(shù)學(xué):84大學(xué)英語:88

請輸入第5名學(xué)生分?jǐn)?shù):姓名:張一析編號:05數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):68

大學(xué)英語:91

請輸入第6名學(xué)生分?jǐn)?shù):姓名:白曉彤編號:06數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:90

6

學(xué)生總分成績排序表

名次學(xué)號姓名數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)大學(xué)英語總分15張一析78689123722袁欣7834滕芷7946白曉彤8851史孟晨8763趙宇88奇偶交換成績1排序表

名次學(xué)號姓名分?jǐn)?shù)15張一析7812袁欣7824滕芷7931史孟晨87奇偶交換成績2排序表名次學(xué)號姓名分?jǐn)?shù)15張一析6826白曉彤7623

趙宇76

32袁欣80奇偶交換成績3排序表名次學(xué)號姓名分?jǐn)?shù)11史孟晨7824滕芷8836白曉彤90Pressanykeytocontinue

809284887690907876952502512542552597

Change.c#include\#include\\

#defineM6#defineN3

voidchangesort(structstudenta[],intn,intj);voidprint_score(structstudenta[],intn,intj);

structstudent{

charname[10];

intnumber;intscore[N+1];

/*score[N]

分,score[0]-score[2]為學(xué)科成績*/}stu[M];

main(){inti,j,k;

for(i=0;i0

printf(\

printf(\M\printf(\%s\

for(j=0;j0

printf(\\printf(\printf(\%s\printf(\printf(\

}}

升序改降序:

請輸入第1名學(xué)生分?jǐn)?shù):姓名:史孟晨

10

編號:01

數(shù)據(jù)結(jié)構(gòu):87離散數(shù)學(xué):90大學(xué)英語:78

請輸入第2名學(xué)生分?jǐn)?shù):姓名:袁欣編號:02數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):80大學(xué)英語:92

請輸入第3名學(xué)生分?jǐn)?shù):姓名:趙宇編號:03數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:95

請輸入第4名學(xué)生分?jǐn)?shù):姓名:滕芷編號:04數(shù)據(jù)結(jié)構(gòu):79離散數(shù)學(xué):84

大學(xué)英語:88

請輸入第5名學(xué)生分?jǐn)?shù):姓名:張一析編號:05數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):68

大學(xué)英語:91

請輸入第6名學(xué)生分?jǐn)?shù):姓名:白曉彤編號:06數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:90

學(xué)生總分成績排序表

名次學(xué)號姓名數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)大學(xué)英語

13趙宇88769521史孟晨87907836白曉彤88769044滕芷79848852袁欣78809265張一析786891奇偶交換成績1排序表

分25925525425125023711

名次學(xué)號姓名分?jǐn)?shù)13趙宇8816白曉彤8821史孟晨87

3

4

滕芷79

奇偶交換成績2排序表

名次學(xué)號姓名分?jǐn)?shù)11史孟晨9024滕芷8432袁欣80奇偶交換成績3排序表名次學(xué)號姓名分?jǐn)?shù)13趙宇9522袁欣9235張一析91Pressanykeytocontinue

12

Seletsort.c#include\#include\

#defineM6#defineN3

voidchangesort(structstudenta[],intn,intj);voidprint_score(structstudenta[],intn,intj);

structstudent{

charname[10];

intnumber;intscore[N+1];

/*score[N]

分,score[0]-score[2]為學(xué)科成績*/}stu[M];

main(){inti,j,k;

for(i=0;i0

printf(\

printf(\M\printf(\%s\

for(j=0;ja[k].score[j]){k=m;temp=a[i];a[i]=a[k];a[k]=temp;flag=1;}}}}

voidprint_score(structstudenta[],intn,intj)

{inti,k;

printf(\選擇交換成績%d排序表\printf(\

printf(\名次學(xué)號姓名分?jǐn)?shù)\\n\k=1;

for(i=0;k0

printf(\\

printf(\printf(\%s\printf(\printf(\

}}

簡單項選擇擇:

請輸入第1名學(xué)生分?jǐn)?shù):姓名:史孟晨

15

編號:01

數(shù)據(jù)結(jié)構(gòu):87離散數(shù)學(xué):90大學(xué)英語:78

請輸入第2名學(xué)生分?jǐn)?shù):姓名:袁欣編號:02數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):80大學(xué)英語:92

請輸入第3名學(xué)生分?jǐn)?shù):姓名:趙宇編號:03數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:95

請輸入第4名學(xué)生分?jǐn)?shù):姓名:滕芷編號:04數(shù)據(jù)結(jié)構(gòu):79離散數(shù)學(xué):84

大學(xué)英語:88

請輸入第5名學(xué)生分?jǐn)?shù):姓名:張一析編號:05數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):68

大學(xué)英語:91

請輸入第6名學(xué)生分?jǐn)?shù):姓名:白曉彤編號:06數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:90

學(xué)生總分成績排序表

名次學(xué)號姓名數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)大學(xué)英語

13趙宇88769521史孟晨87907836白曉彤88769044滕芷79848852袁欣78809265張一析786891選擇交換成績1排序表

分25925525425125023716

名次學(xué)號姓名分?jǐn)?shù)13趙宇8816白曉彤8821史孟晨87

3

4

滕芷79

選擇交換成績2排序表

名次學(xué)號姓名分?jǐn)?shù)11史孟晨9024滕芷8432袁欣80選擇交換成績3排序表名次學(xué)號姓名分?jǐn)?shù)13趙宇9522袁欣9235張一析91Pressanykeytocontinue

17

Bubblesort.c#include\#include\

#defineM6#defineN3

voidchangesort(structstudenta[],intn,intj);voidprint_score(structstudenta[],intn,intj);

structstudent{

charname[10];

intnumber;intscore[N+1];

/*score[N]

分,score[0]-score[2]為學(xué)科成績*/}stu[M];

main(){inti,j,k;

for(i=0;i0

printf(\

printf(\M\printf(\%s\

for(j=0;j0

printf(\\

printf(\printf(\%s\printf(\printf(\

}}

運(yùn)行結(jié)果:

請輸入第1名學(xué)生分?jǐn)?shù):姓名:史孟晨編號:01數(shù)據(jù)結(jié)構(gòu):87離散數(shù)學(xué):90

大學(xué)英語:78

請輸入第2名學(xué)生分?jǐn)?shù):姓名:袁欣

20

編號:02

數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):80大學(xué)英語:92

請輸入第3名學(xué)生分?jǐn)?shù):姓名:趙宇編號:03數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:95

請輸入第4名學(xué)生分?jǐn)?shù):姓名:滕芷編號:04數(shù)據(jù)結(jié)構(gòu):79離散數(shù)學(xué):84大學(xué)英語:88

請輸入第5名學(xué)生分?jǐn)?shù):姓名:張一析編號:05數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):68

大學(xué)英語:91

請輸入第6名學(xué)生分?jǐn)?shù):姓名:白曉彤編號:06數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76

大學(xué)英語:90

學(xué)生總分成績排序表

名次學(xué)號姓名數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)大學(xué)英語

13趙宇88769521史孟晨87907836白曉彤88769044滕芷79848852袁欣78809265張一析786891冒泡交換成績1排序表

名次學(xué)號姓名分?jǐn)?shù)13趙宇8816白曉彤8821史孟晨8734滕芷79冒泡交換成績2排序表

分25925525425125023721

名次學(xué)號姓名分?jǐn)?shù)11史孟晨9024滕芷8432袁欣80冒泡交換

成績

3排序表

名次學(xué)號姓名分?jǐn)?shù)13趙宇9522袁欣9235張一析91Pressanykeytocontinue

22

Jusertsort.c

#include\#include\

#defineM6#defineN3

voidchangesort(structstudenta[],intn,intj);voidprint_score(structstudenta[],intn,intj);

structstudent{

charname[10];

intnumber;intscore[N+1];

/*score[N]

分,score[0]-score[2]為學(xué)科成績*/}stu[M];

main(){inti,j,k;

for(i=0;i0

printf(\

printf(\M\printf(\%s\for(j=0;j0m--){a[m]=a[m-1];}a[m]=temp;

}

}

voidprint_score(structstudenta[],intn,intj){inti,k;

printf(\插入交換成績%d排序表\printf(\

printf(\名次學(xué)號姓名分?jǐn)?shù)\\n\

k=1;

for(i=0;k0

printf(\\

printf(\printf(\%s\printf(\printf(\

}

}

請輸入第1名學(xué)生分?jǐn)?shù):姓名:史孟晨編號:01數(shù)據(jù)結(jié)構(gòu):87離散數(shù)學(xué):90

大學(xué)英語:78

請輸入第2名學(xué)生分?jǐn)?shù):姓名:袁欣

25

編號:02

數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):80大學(xué)英語:92

請輸入第3名學(xué)生分?jǐn)?shù):姓名:趙宇編號:03數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76大學(xué)英語:95

請輸入第4名學(xué)生分?jǐn)?shù):姓名:滕芷編號:04數(shù)據(jù)結(jié)構(gòu):79離散數(shù)學(xué):84大學(xué)英語:88

請輸入第5名學(xué)生分?jǐn)?shù):姓名:張一析編號:05數(shù)據(jù)結(jié)構(gòu):78離散數(shù)學(xué):68

大學(xué)英語:91

請輸入第6名學(xué)生分?jǐn)?shù):姓名:白曉彤編號:06數(shù)據(jù)結(jié)構(gòu):88離散數(shù)學(xué):76

大學(xué)英語:90

學(xué)生總分成績排序表

名次學(xué)號姓名數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)大學(xué)英語

13趙宇88769521史孟晨87907836白曉彤88769044滕芷79848852袁欣78809265張一析786891插入交換成績1排序表

名次學(xué)號姓名分?jǐn)?shù)13趙宇8816白曉彤8821史孟晨8734滕芷79插入交換成績2排序表

分25925525425125023726

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論