版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上20112012第一學(xué)期數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告班級(jí):信管一班 學(xué)號(hào): 姓名:史孟晨實(shí)驗(yàn)報(bào)告題目及要求 一、實(shí)驗(yàn)題目設(shè)某班級(jí)有M(6)名學(xué)生,本學(xué)期共開設(shè)N(3)門課程, 要求實(shí)現(xiàn)并修改如下程序(算法)。1. 輸入學(xué)生的學(xué)號(hào)、姓名和 N 門課程的成績(jī)(輸入提示和輸出顯示使用漢字系統(tǒng)),輸出實(shí)驗(yàn)結(jié)果 。(15分)2. 計(jì)算每個(gè)學(xué)生本學(xué)期 N 門課程的總分,輸出總分和N門課程成績(jī)排在前 3 名學(xué)生的學(xué)號(hào)、姓名和成績(jī)。3. 按學(xué)生總分和 N 門課程成績(jī)關(guān)鍵字升序排列名次,總分相同者同名次。 二、實(shí)驗(yàn)要求1修改算法。將奇偶排序算法升序改為降序。(15分)2用選擇排序、冒泡排序、插入排
2、序分別替換奇偶排序算法,并將升序算法修改為降序算法;。(45分)3編譯、鏈接以上算法,按要求寫出實(shí)驗(yàn)報(bào)告(25)。4. 修改后算法的所有語句必須加下劃線,沒做修改語句保持按原樣不動(dòng)。5用A4紙打印輸出實(shí)驗(yàn)報(bào)告。三、實(shí)驗(yàn)報(bào)告說明實(shí)驗(yàn)數(shù)據(jù)可自定義,每種排序算法數(shù)據(jù)要求均不重復(fù)。 (1) 實(shí)驗(yàn)題目:N門課程學(xué)生成績(jī)名次排序算法實(shí)現(xiàn); (2) 實(shí)驗(yàn)?zāi)康模赫莆崭鞣N排序算法的基本思想、實(shí)驗(yàn)方法和驗(yàn)證算法的準(zhǔn)確性; (3) 實(shí)驗(yàn)要求:對(duì)算法進(jìn)行上機(jī)編譯、鏈接、運(yùn)行; (4) 實(shí)驗(yàn)環(huán)境(Windows XP-sp3,Visual c+); (5) 實(shí)驗(yàn)算法(給出四種排序算法修改后的全部清單); (6) 實(shí)驗(yàn)結(jié)
3、果(四種排序算法模擬運(yùn)行后的實(shí)驗(yàn)結(jié)果); (7) 實(shí)驗(yàn)體會(huì)(文字說明本實(shí)驗(yàn)成功或不足之處)。三、實(shí)驗(yàn)源程序(算法)Score.c#include stdio.h#include string.h#define M 6#define N 3struct student char name10; int number; int scoreN+1; /*scoreN為總分,score0-score2為學(xué)科成績(jī)*/ stuM;void changesort(struct student a,int n,int j) int flag=1,i; struct student temp; while(fl
4、ag) flag=0; for(i=1;iai+1.scorej) temp=ai; ai=ai+1; ai+1=temp; flag=1; for(i=0;iai+1.scorej) temp=ai; ai=ai+1; ai+1=temp; flag=1; void print_score(struct student a,int n,int j) int i,k; printf(“ 奇偶交換 成績(jī) %d 排序表,j+1); printf(n); printf( 名 次 學(xué) 號(hào) 姓 名 分 數(shù)n); k=1; for(i=0;kN&i0&ai.scorej!=ai-1.scorej) k+;
5、 printf( %4d ,k); printf(%4d,ai.number); printf( %s,); printf( %6d,ai.scorej); printf(n); main() int i,j,k; for (i=0;iM;i+) /*輸入每個(gè)學(xué)生信息*/ printf(請(qǐng)輸入第 %d 名學(xué)生分?jǐn)?shù): ,i+1);printf(n); printf(姓 名: ); scanf(%s,); printf(編 號(hào): ); scanf(%4d,&stui.number); printf(數(shù)據(jù)結(jié)構(gòu): ); scanf(%4d,&stui.score0);
6、printf(離散數(shù)學(xué): ); scanf(%4d,&stui.score1); printf(大學(xué)英語: ); scanf(%4d,&stui.score2); for(i=0;iM;i+) /*計(jì)算每個(gè)學(xué)生總分*/ stui.scoreN=0; for(j=0;jN;j+) stui.scoreN+=stui.scorej; changesort(stu,M,N); /*對(duì)總分進(jìn)行排序*/ printf( 學(xué)生總分成績(jī)排序表n); printf( 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分n); k=1; for(i=0;i0&stui.scoreN!=stui-1.scor
7、eN) k+; printf(%4d,k); printf( %4d,stui.number); printf( %s,); for(j=0;jN+1;j+) printf( %6d,stui.scorej); printf(n); changesort(stu,M,0); /*對(duì)數(shù)據(jù)結(jié)構(gòu)成績(jī)進(jìn)行排序*/ print_score(stu,M,0); /*輸出數(shù)據(jù)結(jié)構(gòu)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,1); /*對(duì)離散數(shù)學(xué)成績(jī)進(jìn)行排序*/ print_score(stu,M,1); /*輸出離散數(shù)學(xué)前 3 名同學(xué)成績(jī)*/ changesort(stu,M
8、,2); /*對(duì)大學(xué)英語成績(jī)進(jìn)行排序*/ print_score(stu,M,2); /*輸出大學(xué)英語前 3 名同學(xué)成績(jī)*/ 源代碼結(jié)果:請(qǐng)輸入第 1 名學(xué)生分?jǐn)?shù):姓 名: 史孟晨編 號(hào): 01數(shù)據(jù)結(jié)構(gòu): 87離散數(shù)學(xué): 90大學(xué)英語: 78請(qǐng)輸入第 2 名學(xué)生分?jǐn)?shù):姓 名: 袁欣編 號(hào): 02數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 80大學(xué)英語: 92請(qǐng)輸入第 3 名學(xué)生分?jǐn)?shù):姓 名: 趙宇編 號(hào): 03數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 95請(qǐng)輸入第 4 名學(xué)生分?jǐn)?shù):姓 名: 滕芷編 號(hào): 04數(shù)據(jù)結(jié)構(gòu): 79離散數(shù)學(xué): 84大學(xué)英語: 88請(qǐng)輸入第 5 名學(xué)生分?jǐn)?shù):姓 名: 張一析編 號(hào):
9、05數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 68大學(xué)英語: 91請(qǐng)輸入第 6 名學(xué)生分?jǐn)?shù):姓 名: 白曉彤編 號(hào): 06數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 90 學(xué)生總分成績(jī)排序表 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分 1 5 張一析 78 68 91 237 2 2 袁欣 78 80 92 250 3 4 滕芷 79 84 88 251 4 6 白曉彤 88 76 90 254 5 1 史孟晨 87 90 78 255 6 3 趙宇 88 76 95 259 奇偶交換 成績(jī) 1 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 5 張一析 78 1 2 袁欣 78 2 4 滕芷 7
10、9 3 1 史孟晨 87 奇偶交換 成績(jī) 2 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 5 張一析 68 2 6 白曉彤 76 2 3 趙宇 76 3 2 袁欣 80 奇偶交換 成績(jī) 3 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 1 史孟晨 78 2 4 滕芷 88 3 6 白曉彤 90Press any key to continueChange.c#include stdio.h#include string.h#define M 6#define N 3void changesort(struct student a,int n,int j);void print_score(str
11、uct student a,int n,int j);struct student char name10; int number; int scoreN+1;/*scoreN為總分,score0-score2為學(xué)科成績(jī)*/ stuM;main() int i,j,k; for (i=0;iM;i+)/*輸入每個(gè)學(xué)生信息*/ printf(請(qǐng)輸入第 %d 名學(xué)生分?jǐn)?shù): ,i+1);printf(n); printf(姓 名: ); scanf(%s,); printf(編 號(hào): );scanf(%4d,&stui.number); printf(數(shù)據(jù)結(jié)構(gòu): );scanf(%
12、4d,&stui.score0); printf(離散數(shù)學(xué): );scanf(%4d,&stui.score1);printf(大學(xué)英語: );scanf(%4d,&stui.score2); for(i=0;iM;i+)/*計(jì)算每個(gè)學(xué)生總分*/ stui.scoreN=0; for(j=0;jN;j+) stui.scoreN+=stui.scorej; changesort(stu,M,N);/*對(duì)總分進(jìn)行排序*/printf( 學(xué)生總分成績(jī)排序表n); printf( 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分n); k=0; for(i=0;i0&stui.scoreN!
13、=stui-1.scoreN) k+; printf(%4d,k);printf( %4d,stui-1.number);printf( %s,);for(j=0;jN+1;j+)printf( %6d,stui-1.scorej); printf(n); changesort(stu,M,0); /*對(duì)數(shù)據(jù)結(jié)構(gòu)成績(jī)進(jìn)行排序*/ print_score(stu,M,0); /*輸出數(shù)據(jù)結(jié)構(gòu)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,1); /*對(duì)離散數(shù)學(xué)成績(jī)進(jìn)行排序*/ print_score(stu,M,1); /*輸出離散數(shù)學(xué)前 3 名同學(xué)成績(jī)*/ ch
14、angesort(stu,M,2); /*對(duì)大學(xué)英語成績(jī)進(jìn)行排序*/ print_score(stu,M,2); /*輸出大學(xué)英語前 3 名同學(xué)成績(jī)*/ void changesort(struct student a,int n,int j) int flag=1,i;struct student temp; while(flag) flag=0; for(i=1;in-1;i+=2) /*對(duì)所有奇數(shù)項(xiàng)進(jìn)行一遍比較*/ if (ai.scorej ai+1.scorej) temp=ai; ai=ai+1; ai+1=temp; flag=1; for(i=0;in-1;i+=2) /*對(duì)所
15、有偶數(shù)項(xiàng)進(jìn)行一遍比較*/ if (ai.scorej ai+1.scorej) temp=ai; ai=ai+1; ai+1=temp; flag=1; void print_score(struct student a,int n,int j) int i,k; printf( 奇偶交換 成績(jī) %d 排序表,j+1); printf(n); printf( 名 次 學(xué) 號(hào) 姓 名 分 數(shù)n); k=1; for(i=0;kN&i0&ai.scorej!=ai-1.scorej) k+; printf( %4d ,k); printf(%4d,ai.number); printf( %s,ai
16、.name); printf( %6d,ai.scorej); printf(n); 升序改降序:請(qǐng)輸入第 1 名學(xué)生分?jǐn)?shù):姓 名: 史孟晨編 號(hào): 01數(shù)據(jù)結(jié)構(gòu): 87離散數(shù)學(xué): 90大學(xué)英語: 78請(qǐng)輸入第 2 名學(xué)生分?jǐn)?shù):姓 名: 袁欣編 號(hào): 02數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 80大學(xué)英語: 92請(qǐng)輸入第 3 名學(xué)生分?jǐn)?shù):姓 名: 趙宇編 號(hào): 03數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 95請(qǐng)輸入第 4 名學(xué)生分?jǐn)?shù):姓 名: 滕芷編 號(hào): 04數(shù)據(jù)結(jié)構(gòu): 79離散數(shù)學(xué): 84大學(xué)英語: 88請(qǐng)輸入第 5 名學(xué)生分?jǐn)?shù):姓 名: 張一析編 號(hào): 05數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 68大學(xué)
17、英語: 91請(qǐng)輸入第 6 名學(xué)生分?jǐn)?shù):姓 名: 白曉彤編 號(hào): 06數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 90 學(xué)生總分成績(jī)排序表 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分 1 3 趙宇 88 76 95 259 2 1 史孟晨 87 90 78 255 3 6 白曉彤 88 76 90 254 4 4 滕芷 79 84 88 251 5 2 袁欣 78 80 92 250 6 5 張一析 78 68 91 237 奇偶交換 成績(jī) 1 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 88 1 6 白曉彤 88 2 1 史孟晨 87 3 4 滕芷 79 奇偶交換 成績(jī)
18、 2 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 1 史孟晨 90 2 4 滕芷 84 3 2 袁欣 80 奇偶交換 成績(jī) 3 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 95 2 2 袁欣 92 3 5 張一析 91Press any key to continueSeletsort.c#include stdio.h#include string.h#define M 6#define N 3void changesort(struct student a,int n,int j);void print_score(struct student a,int n,int j);st
19、ruct student char name10; int number; int scoreN+1;/*scoreN為總分,score0-score2為學(xué)科成績(jī)*/ stuM;main() int i,j,k; for (i=0;iM;i+)/*輸入每個(gè)學(xué)生信息*/ printf(請(qǐng)輸入第 %d 名學(xué)生分?jǐn)?shù): ,i+1);printf(n); printf(姓 名: ); scanf(%s,); printf(編 號(hào): );scanf(%4d,&stui.number); printf(數(shù)據(jù)結(jié)構(gòu): );scanf(%4d,&stui.score0); printf(離散數(shù)學(xué)
20、: );scanf(%4d,&stui.score1);printf(大學(xué)英語: );scanf(%4d,&stui.score2); for(i=0;iM;i+)/*計(jì)算每個(gè)學(xué)生總分*/ stui.scoreN=0; for(j=0;jN;j+) stui.scoreN+=stui.scorej; changesort(stu,M,N);/*對(duì)總分進(jìn)行排序*/printf( 學(xué)生總分成績(jī)排序表n); printf( 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分n); k=0; for(i=0;i0&stui.scoreN!=stui-1.scoreN) k+; printf(%4
21、d,k);printf( %4d,stui-1.number);printf( %s,);for(j=0;jN+1;j+)printf( %6d,stui-1.scorej); printf(n); changesort(stu,M,0); /*對(duì)數(shù)據(jù)結(jié)構(gòu)成績(jī)進(jìn)行排序*/ print_score(stu,M,0); /*輸出數(shù)據(jù)結(jié)構(gòu)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,1); /*對(duì)離散數(shù)學(xué)成績(jī)進(jìn)行排序*/ print_score(stu,M,1); /*輸出離散數(shù)學(xué)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,2); /*對(duì)大學(xué)英語成績(jī)進(jìn)
22、行排序*/ print_score(stu,M,2); /*輸出大學(xué)英語前 3 名同學(xué)成績(jī)*/ void changesort(struct student a,int n,int j) int flag=1,i,m,k;struct student temp; while(flag) flag=0; for(i=0;in-1;i+) /*選擇排序法*/ k=i;for(m=i+1;mak.scorej)k=m;temp=ai;ai=ak;ak=temp;flag=1; void print_score(struct student a,int n,int j) int i,k; printf
23、( 選擇交換 成績(jī) %d 排序表,j+1); printf(n); printf( 名 次 學(xué) 號(hào) 姓 名 分 數(shù)n); k=1; for(i=0;kN&i0&ai.scorej!=ai-1.scorej) k+; printf( %4d ,k); printf(%4d,ai.number); printf( %s,); printf( %6d,ai.scorej); printf(n); 簡(jiǎn)單選擇:請(qǐng)輸入第 1 名學(xué)生分?jǐn)?shù):姓 名: 史孟晨編 號(hào): 01數(shù)據(jù)結(jié)構(gòu): 87離散數(shù)學(xué): 90大學(xué)英語: 78請(qǐng)輸入第 2 名學(xué)生分?jǐn)?shù):姓 名: 袁欣編 號(hào): 02數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué)
24、: 80大學(xué)英語: 92請(qǐng)輸入第 3 名學(xué)生分?jǐn)?shù):姓 名: 趙宇編 號(hào): 03數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 95請(qǐng)輸入第 4 名學(xué)生分?jǐn)?shù):姓 名: 滕芷編 號(hào): 04數(shù)據(jù)結(jié)構(gòu): 79離散數(shù)學(xué): 84大學(xué)英語: 88請(qǐng)輸入第 5 名學(xué)生分?jǐn)?shù):姓 名: 張一析編 號(hào): 05數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 68大學(xué)英語: 91請(qǐng)輸入第 6 名學(xué)生分?jǐn)?shù):姓 名: 白曉彤編 號(hào): 06數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 90 學(xué)生總分成績(jī)排序表 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分 1 3 趙宇 88 76 95 259 2 1 史孟晨 87 90 78 255 3
25、 6 白曉彤 88 76 90 254 4 4 滕芷 79 84 88 251 5 2 袁欣 78 80 92 250 6 5 張一析 78 68 91 237 選擇交換 成績(jī) 1 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 88 1 6 白曉彤 88 2 1 史孟晨 87 3 4 滕芷 79 選擇交換 成績(jī) 2 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 1 史孟晨 90 2 4 滕芷 84 3 2 袁欣 80 選擇交換 成績(jī) 3 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 95 2 2 袁欣 92 3 5 張一析 91Press any key to continueB
26、ubblesort.c#include stdio.h#include string.h#define M 6#define N 3void changesort(struct student a,int n,int j);void print_score(struct student a,int n,int j);struct student char name10; int number; int scoreN+1;/*scoreN為總分,score0-score2為學(xué)科成績(jī)*/ stuM;main() int i,j,k; for (i=0;iM;i+)/*輸入每個(gè)學(xué)生信息*/ prin
27、tf(請(qǐng)輸入第 %d 名學(xué)生分?jǐn)?shù): ,i+1);printf(n); printf(姓 名: ); scanf(%s,); printf(編 號(hào): );scanf(%4d,&stui.number); printf(數(shù)據(jù)結(jié)構(gòu): );scanf(%4d,&stui.score0); printf(離散數(shù)學(xué): );scanf(%4d,&stui.score1);printf(大學(xué)英語: );scanf(%4d,&stui.score2); for(i=0;iM;i+)/*計(jì)算每個(gè)學(xué)生總分*/ stui.scoreN=0; for(j=0;jN;j+) stui.scoreN+=s
28、tui.scorej; changesort(stu,M,N);/*對(duì)總分進(jìn)行排序*/printf( 學(xué)生總分成績(jī)排序表n); printf( 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分n); k=0; for(i=0;i0&stui.scoreN!=stui-1.scoreN) k+; printf(%4d,k);printf( %4d,stui-1.number);printf( %s,);for(j=0;jN+1;j+)printf( %6d,stui-1.scorej); printf(n); changesort(stu,M,0); /*對(duì)數(shù)據(jù)結(jié)構(gòu)
29、成績(jī)進(jìn)行排序*/ print_score(stu,M,0); /*輸出數(shù)據(jù)結(jié)構(gòu)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,1); /*對(duì)離散數(shù)學(xué)成績(jī)進(jìn)行排序*/ print_score(stu,M,1); /*輸出離散數(shù)學(xué)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,2); /*對(duì)大學(xué)英語成績(jī)進(jìn)行排序*/ print_score(stu,M,2); /*輸出大學(xué)英語前 3 名同學(xué)成績(jī)*/ void changesort(struct student a,int n,int j) int flag=1,i;struct student temp; while(flag)
30、 flag=0; for(i=0;in;i+) /*冒泡排序法*/ if (ai.scorej ai+1.scorej) temp=ai; ai=ai+1; ai+1=temp; flag=1; void print_score(struct student a,int n,int j) int i,k; printf( 冒泡交換 成績(jī) %d 排序表,j+1); printf(n); printf( 名 次 學(xué) 號(hào) 姓 名 分 數(shù)n); k=1; for(i=0;kN&i0&ai.scorej!=ai-1.scorej) k+; printf( %4d ,k); printf(%4d,ai.n
31、umber); printf( %s,); printf( %6d,ai.scorej); printf(n); 運(yùn)行結(jié)果:請(qǐng)輸入第 1 名學(xué)生分?jǐn)?shù):姓 名: 史孟晨編 號(hào): 01數(shù)據(jù)結(jié)構(gòu): 87離散數(shù)學(xué): 90大學(xué)英語: 78請(qǐng)輸入第 2 名學(xué)生分?jǐn)?shù):姓 名: 袁欣編 號(hào): 02數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 80大學(xué)英語: 92請(qǐng)輸入第 3 名學(xué)生分?jǐn)?shù):姓 名: 趙宇編 號(hào): 03數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 95請(qǐng)輸入第 4 名學(xué)生分?jǐn)?shù):姓 名: 滕芷編 號(hào): 04數(shù)據(jù)結(jié)構(gòu): 79離散數(shù)學(xué): 84大學(xué)英語: 88請(qǐng)輸入第 5 名學(xué)生分?jǐn)?shù):姓 名: 張一析編 號(hào):
32、05數(shù)據(jù)結(jié)構(gòu): 78離散數(shù)學(xué): 68大學(xué)英語: 91請(qǐng)輸入第 6 名學(xué)生分?jǐn)?shù):姓 名: 白曉彤編 號(hào): 06數(shù)據(jù)結(jié)構(gòu): 88離散數(shù)學(xué): 76大學(xué)英語: 90 學(xué)生總分成績(jī)排序表 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分 1 3 趙宇 88 76 95 259 2 1 史孟晨 87 90 78 255 3 6 白曉彤 88 76 90 254 4 4 滕芷 79 84 88 251 5 2 袁欣 78 80 92 250 6 5 張一析 78 68 91 237 冒泡交換 成績(jī) 1 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 88 1 6 白曉彤 88 2 1 史孟晨
33、87 3 4 滕芷 79 冒泡交換 成績(jī) 2 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 1 史孟晨 90 2 4 滕芷 84 3 2 袁欣 80 冒泡交換 成績(jī) 3 排序表 名 次 學(xué) 號(hào) 姓 名 分 數(shù) 1 3 趙宇 95 2 2 袁欣 92 3 5 張一析 91Press any key to continueJusertsort.c#include stdio.h#include string.h#define M 6#define N 3void changesort(struct student a,int n,int j);void print_score(struct stud
34、ent a,int n,int j);struct student char name10; int number; int scoreN+1;/*scoreN為總分,score0-score2為學(xué)科成績(jī)*/ stuM;main() int i,j,k; for (i=0;iM;i+)/*輸入每個(gè)學(xué)生信息*/ printf(請(qǐng)輸入第 %d 名學(xué)生分?jǐn)?shù): ,i+1);printf(n); printf(姓 名: ); scanf(%s,); printf(編 號(hào): );scanf(%4d,&stui.number); printf(數(shù)據(jù)結(jié)構(gòu): );scanf(%4d,&stui
35、.score0); printf(離散數(shù)學(xué): );scanf(%4d,&stui.score1);printf(大學(xué)英語: );scanf(%4d,&stui.score2); for(i=0;iM;i+)/*計(jì)算每個(gè)學(xué)生總分*/ stui.scoreN=0; for(j=0;jN;j+) stui.scoreN+=stui.scorej; changesort(stu,M,N);/*對(duì)總分進(jìn)行排序*/printf( 學(xué)生總分成績(jī)排序表n); printf( 名次 學(xué)號(hào) 姓 名 數(shù)據(jù)結(jié)構(gòu) 離散數(shù)學(xué) 大學(xué)英語 總 分n); k=0; for(i=0;i0&stui.scoreN!=stui-1.
36、scoreN) k+; printf(%4d,k);printf( %4d,stui-1.number);printf( %s,);for(j=0;jN+1;j+)printf( %6d,stui-1.scorej); printf(n); changesort(stu,M,0); /*對(duì)數(shù)據(jù)結(jié)構(gòu)成績(jī)進(jìn)行排序*/ print_score(stu,M,0); /*輸出數(shù)據(jù)結(jié)構(gòu)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,1); /*對(duì)離散數(shù)學(xué)成績(jī)進(jìn)行排序*/ print_score(stu,M,1); /*輸出離散數(shù)學(xué)前 3 名同學(xué)成績(jī)*/ changesort(stu,M,2); /*對(duì)大學(xué)英語成績(jī)進(jìn)行排序*/ print_score(st
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公共工程合同管理標(biāo)準(zhǔn)
- 2024年辦公展覽投資協(xié)議書模板范本
- 化工區(qū)域代理合同協(xié)議書范文
- 實(shí)驗(yàn)室水質(zhì)檢測(cè)
- 人教版英語八年級(jí)下冊(cè) Unit 5 同步練習(xí)
- 制藥企業(yè)安全生產(chǎn)培訓(xùn)
- 國(guó)有企業(yè)信訪維穩(wěn)工作應(yīng)急預(yù)案實(shí)施細(xì)則
- 機(jī)場(chǎng)安檢監(jiān)控系統(tǒng)維護(hù)方案
- 自然災(zāi)害影響評(píng)估與恢復(fù)方案
- 科學(xué)活動(dòng)復(fù)活毛毛蟲
- 變配電所綜合自動(dòng)化系統(tǒng)講義
- 超聲內(nèi)鏡培訓(xùn)課件
- 重大事故隱患數(shù)據(jù)表
- 渠道管理就這樣做
- 水電站大壩安全管理實(shí)績(jī)?cè)u(píng)價(jià)規(guī)程
- 07項(xiàng)目部事故隱患排查清單
- ZZ036 新能源汽車維修賽題-2023年全國(guó)職業(yè)院校技能大賽擬設(shè)賽項(xiàng)賽題(10套)
- 人教版五年級(jí)上冊(cè)簡(jiǎn)易方程《用字母表示數(shù)例4》
- ZZ031 園林微景觀設(shè)計(jì)與制作賽項(xiàng)賽題-2023年全國(guó)職業(yè)院校技能大賽擬設(shè)賽項(xiàng)賽題完整版(10套)
- 體育看齊教案
- 學(xué)生突出心理問題防治工作實(shí)施方案
評(píng)論
0/150
提交評(píng)論