

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> C語言課程設計報告書</p><p><b> 姓 名:</b></p><p><b> 班 級:</b></p><p><b> 班級學號: </b></p><p><b> 指導老師: </b></
2、p><p><b> 一 課設題目</b></p><p><b> 高考招生錄取成績</b></p><p> 已知文本文件f1.txt中存放了某個省當年參加高考的1000個考生的數(shù)據(jù)(考號、姓名、性別和考試成績),存放格式是每行存放一個考生的數(shù)據(jù),每個數(shù)據(jù)之間用空格隔開。</p><p>
3、 假定當年該省的招生計劃是:一類本科招生計劃為10%;二類本科招生計劃為15%;三類本科招生計劃為20%;四類高職高專招生計劃為25%。</p><p> 請編寫程序,實現(xiàn)以下功能:</p><p> 1.劃定各批次錄取分數(shù)線,結果可屏幕顯示,也可存入文件;</p><p> 2.能夠統(tǒng)計各批次中男生,女生的錄取比例。統(tǒng)計結果可屏幕顯示,也可存入文件;<
4、/p><p> 3.確定每名學生的錄取情況及錄取批次;</p><p> 4.考生可以根據(jù)考號或姓名(支持重名)查詢自己的成績及錄取情況;</p><p> 5.系統(tǒng)程序要有界面;</p><p> 6.存入文件的數(shù)據(jù),每行存一種數(shù)據(jù),每行之間的不同信息用空格分隔。)</p><p><b> 二 題
5、目分析</b></p><p> 該程序題目已經(jīng)很清楚的表達出要求編好的程序能夠簡單的實行高考招生功能,首先需要在導入含有一千個考生信息的txt文本,以能達到錄取功能。根據(jù)該題目我們還可以知道完成數(shù)據(jù)輸入后,不僅要有比較整潔的界面,還要能根據(jù)用戶要求界面顯示出個批次中男女的比例以及錄取線、可供用戶查詢(根據(jù)考生姓名或考號)某考生成績及錄取情況。那么我們最好設置一個大循環(huán),使得考生能實現(xiàn)只要不關閉程序
6、或者按指定輸入而結束程序就能一直查詢下去,并且能用txt文本將個批次中錄取的人的一系列信息從程序中生成出來。</p><p> 但作為藝術生,我的能力有限,只能從網(wǎng)絡上尋找已經(jīng)編好的程序進行理解,降低理解題目的難度。</p><p><b> 三 設計思路</b></p><p> 要編題目中要求的程序,就必須先將已經(jīng)寫好的一千個學生的
7、信息的文本文件輸入程序。</p><p><b> 第一步為定義:</b></p><p> #include <stdio.h></p><p> #include <malloc.h></p><p> 用結構體的形式將學生的一切信息表達出來:</p><p>
8、 struct DATA</p><p><b> {</b></p><p><b> int ID;</b></p><p> char name[4];</p><p> char sex[3];</p><p> int score;</p>
9、<p><b> };</b></p><p><b> 定義各個函數(shù):</b></p><p> void paixu(int*,DATA*,int);</p><p> int sishewuru(double);</p><p> void func1(int*,int*
10、,DATA*,int*,int,int,int,int);//統(tǒng)計男女比例</p><p> int func2(int*,int,DATA*);//查找考生序號</p><p> void print();</p><p> void main()</p><p> 再應該從f1.txt中向程序導入將每一個人的學號、姓名、性別、分數(shù)
11、,并自動計算考生數(shù)量:</p><p> FILE* file=fopen("f1.txt","r"),*file1;</p><p> if(file==NULL)</p><p><b> {</b></p><p> printf("No such file
12、!\n");</p><p><b> return;</b></p><p><b> }</b></p><p> while(EOF!=fscanf(file,"%*[^\n]\n")) length++;//自動計算考生數(shù)量</p><p> 然后比較大
13、小,將原來一千個人按成績高低排好順序:</p><p> DATA* data=(DATA*)malloc(length*sizeof(DATA));</p><p> int* pai=(int*)malloc(length*sizeof(int));</p><p> rewind(file);</p><p> for(i=0;
14、i<length;i++)</p><p><b> {</b></p><p> fscanf(file,"%d %s %s %d",&data[i].ID,&data[i].name,&data[i].sex,&data[i].score);</p><p><b>
15、 pai[i]=i;</b></p><p><b> }</b></p><p> paixu(pai,data,length);//將1-1000的學生按成績排序</p><p> 對1000名學生的成績分別按比例進行計算并四舍五入為整數(shù),可得出各批次最低成績,即各批次的錄取成績。要劃出各批次的錄取成績,就要將壓線的那個分
16、數(shù)計算出來。在這里,特別考慮的是:壓線分數(shù)上人數(shù)有多個,所以,我們不能單純的將N乘以各個批次的百分點。編寫程序如下:</p><p> yiben=sishewuru(length*0.1)-1;//分別按比例進行計算并四舍五入為整數(shù)</p><p> erben=yiben+sishewuru(length*0.15);</p><p> sanben=er
17、ben+sishewuru(length*0.2);</p><p> dazhuan=sanben+sishewuru(length*0.25);</p><p> yi=data[pai[yiben]].score;er=data[pai[erben]].score;</p><p> san=data[pai[sanben]].score;si=data
18、[pai[dazhuan]].score;</p><p> 設置界面:將“各類招生分數(shù)線”、“ 各批次男女比例”、“ 單個學生錄取情況”、“ 退出系統(tǒng)輸入”、“ 重新打印初試界面”輸入指令分別設置為數(shù)字“0”~“4”:</p><p><b> while(1)</b></p><p><b> {</b><
19、/p><p><b> print();</b></p><p> printf("\n請輸入查詢碼:");</p><p> for(input=getchar();;input=getchar())</p><p><b> {</b></p><p&
20、gt; if(!(input>='0'&&input<='4'))</p><p><b> {</b></p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><
21、p><b> }</b></p><p> else break;</p><p><b> }</b></p><p> 實現(xiàn)“各類招生分數(shù)線”即“0”指令:</p><p> getchar();</p><p> switch(input)</p
22、><p><b> {</b></p><p><b> case '0':</b></p><p> printf("\n一類本科招生線:%d\n二類本科招生線:%d\n三類本科招生線:%d\</p><p> \n高職高專招生線:%d\n",yi,er,s
23、an,si);</p><p> printf("是否打印為文件?(y/n):");</p><p> if(getchar()=='y')</p><p><b> {</b></p><p> file1=fopen("各批次錄取分數(shù)線.txt",&qu
24、ot;w");</p><p> fprintf(file1,"一類本科招生線:%d\n二類本科招生線:%d\</p><p> \n三類本科招生線:%d\n高職高專招生線:%d\n",yi,er,san,si);</p><p> fclose(file1);</p><p><b> }&l
25、t;/b></p><p> fflush(stdin);</p><p><b> break;</b></p><p> 實現(xiàn)“各批次男女比例”即“1”指令:</p><p><b> case '1':</b></p><p> func
26、1(male,female,data,pai,yiben,erben,sanben,dazhuan);</p><p> printf("一本類本科招生線男女比例: %d:%d\n",male[0],female[0]);</p><p> printf("二類本科招生線男女比例: %d:%d\n",male[1],femal
27、e[1]);</p><p> printf("三類本科招生線男女比例: %d:%d\n",male[2],female[2]);</p><p> printf("高職高專招生線招生線男女比例:%d:%d\n",male[3],female[3]);</p><p> printf("是否打印為文件
28、?(y/n):");</p><p> if(getchar()=='y')</p><p><b> {</b></p><p> file1=fopen("各批次錄取男女比例.txt","w");</p><p> fprintf(file1,
29、"一類本科招生線男女比例: %d:%d\n",male[0],female[0]);</p><p> fprintf(file1,"二類本科招生線男女比例: %d:%d\n",male[1],female[1]);</p><p> fprintf(file1,"三類本科招生線男女比例: %d:%d\n&
30、quot;,male[2],female[2]);</p><p> fprintf(file1,"高職高專招生線招生線男女比例:%d:%d\n",male[3],female[3]);</p><p> fclose(file1);</p><p><b> }</b></p><p> f
31、flush(stdin);</p><p><b> break;</b></p><p> 實現(xiàn)“單個學生錄取情況”即“2”指令:</p><p><b> case '2':</b></p><p> printf("按考號查詢輸入0 按姓名查
32、詢輸入1\n請輸入查詢碼:");</p><p> for(input=getchar();;input=getchar())</p><p><b> {</b></p><p> if(input!='0'&&input!='1')</p><p>&l
33、t;b> {</b></p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><p><b> }</b></p><p> else break;</p><p><b
34、> }</b></p><p> getchar();</p><p> int shuru,j,ss[10];//假設最多10個重名的</p><p> for(j=0;j<10;j++) ss[i]=0;</p><p> if(input=='0')</p><p&g
35、t;<b> {</b></p><p> start1:printf("請輸入考號:");</p><p> for(j=scanf("%d",&shuru);j!=1||shuru/10000!=4211;j=scanf("%d",&shuru))</p>&
36、lt;p> {//假設考號開頭為4211</p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><p><b> }</b></p><p> getchar();</p><p>
37、j=shuru%10000;//假設考號和序號的關系</p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p><p> shuru,data[j].name,data[j].sex,data[j].score);</p><p> if(data[j].score>=yi) pri
38、ntf("一本\n");</p><p> else if(data[j].score>=er) printf("二本\n");</p><p> else if(data[j].score>=san) printf("三本\n");</p><p> else if(data[j].sc
39、ore>=si) printf("高職高專\n");</p><p> else printf("未過線,請繼續(xù)努力!\n");</p><p> printf("是否繼續(xù)查詢?(y/n):");</p><p> if(getchar()=='y')</p>&l
40、t;p><b> {</b></p><p> fflush(stdin);</p><p> goto start1;</p><p><b> }</b></p><p><b> }</b></p><p><b>
41、 else</b></p><p><b> {</b></p><p> start2:printf("請輸入姓名:");</p><p> j=func2(ss,length,data);//查找考生序號</p><p> if(j==0) printf("
42、查無此人!\n");</p><p> else if(j==1)</p><p><b> {</b></p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p><p> data[ss[0]].ID,data[ss[0]].na
43、me,data[ss[0]].sex,data[ss[0]].score);</p><p> if(data[ss[0]].score>=yi) printf("一本\n");</p><p> else if(data[ss[0]].score>=er) printf("二本\n");</p><p>
44、else if(data[ss[0]].score>=san) printf("三本\n");</p><p> else if(data[ss[0]].score>=si) printf("高職高專\n");</p><p> else printf("未過線,請繼續(xù)努力!\n");</p><
45、;p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> printf("有多個考生姓名為%s,數(shù)據(jù)如下:\n",data[ss[0]].name);</p><p> f
46、or(j=j-1;j>=0;j--)</p><p><b> {</b></p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p><p> data[ss[j]].ID,data[ss[j]].name,data[ss[j]].sex,data[ss[j]]
47、.score);</p><p> if(data[ss[j]].score>=yi) printf("一本\n");</p><p> else if(data[ss[j]].score>=er) printf("二本\n");</p><p> else if(data[ss[j]].score>=
48、san) printf("三本\n");</p><p> else if(data[ss[j]].score>=si) printf("高職高專\n");</p><p> else printf("未過線,請繼續(xù)努力!\n");</p><p><b> }</b>&l
49、t;/p><p><b> }</b></p><p> printf("是否繼續(xù)查詢?(y/n):");</p><p> if(getchar()=='y')</p><p><b> {</b></p><p> fflush(
50、stdin);</p><p> goto start2;</p><p><b> }</b></p><p><b> }</b></p><p><b> break;</b></p><p> 實現(xiàn)“退出系統(tǒng)”即“3”指令:</p
51、><p><b> case '3':</b></p><p> fclose(file);</p><p> free(data);</p><p><b> return;</b></p><p> 實現(xiàn)“重新打印初始界面”即“4”指令:</p
52、><p><b> case '4':</b></p><p><b> print();</b></p><p><b> break;</b></p><p><b> }</b></p><p><b
53、> }</b></p><p> fclose(file);</p><p> free(data);</p><p><b> }</b></p><p> 下面,則開始對開始定義的函數(shù)進行填充:</p><p> 根據(jù)1000名學生的成績進行從高到底的排序:<
54、;/p><p> void paixu(int* pai,DATA* data,int length)</p><p><b> {</b></p><p> int i,j,temp;</p><p> for(i=0;i<length;i++)</p><p> for(j=i+1
55、;j<length;j++)</p><p> if(data[pai[i]].score<data[pai[j]].score)</p><p><b> {</b></p><p> temp=pai[i];</p><p> pai[i]=pai[j];</p><p>
56、 pai[j]=temp;</p><p><b> }</b></p><p><b> }</b></p><p> 計算各批次比例的四舍五入:</p><p> int sishewuru(double l)</p><p><b> {</
57、b></p><p><b> if(l>1)</b></p><p><b> {</b></p><p> if((l-(int)l)<0.5) return (int)l;</p><p> else return (int)l+1;</p><p
58、><b> }</b></p><p> else return 1;</p><p><b> }</b></p><p><b> 各批次男女比例:</b></p><p> void func1(int* male,int* female,DATA* da
59、ta,int* pai,int a,int b,int c,int d)</p><p><b> {</b></p><p><b> int i;</b></p><p> for(i=0;i<4;i++) {male[i]=0;female[i]=0;}</p><p> for
60、(i=0;i<=a;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[0]++;</p><p> else female[0]++;</p><p><b> }</b></p><
61、;p> for(;i<=b;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[1]++;</p><p> else female[1]++;</p><p><b> }</b></p&
62、gt;<p> for(;i<=c;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[2]++;</p><p> else female[2]++;</p><p><b> }</b>
63、;</p><p> for(;i<=d;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[3]++;</p><p> else female[3]++;</p><p><b> }&
64、lt;/b></p><p><b> }</b></p><p><b> 界面:</b></p><p> void print()</p><p><b> {</b></p><p> printf("---------
65、-----------------------高考招生錄取程序-------------------------------\n");</p><p> printf("今年招生計劃:一類本科招生計劃為 10%\n 二類本科招生計劃為 15%\n\</p><p> 三類本科招生計劃為 20%\n
66、 四類高職高專招生計劃為25%\n");</p><p> printf("查詢: \n各類招生分數(shù)線輸入 0 各批次男女比例輸入1\</p><p> \n單個學生錄取情況輸入2 退出系統(tǒng)輸入 3\n重新打印初試界面輸入4\n");</p><p><b>
67、; }</b></p><p> 根據(jù)考生的姓名或考號進行單個學生成績查詢:</p><p> int func2(int* ss,int length,DATA* data)</p><p><b> {</b></p><p> int i,j=0;</p><p>
68、char s[4];</p><p><b> while(1)</b></p><p><b> {</b></p><p> i=scanf("%s",s);</p><p> fflush(stdin);</p><p><b>
69、 if(i!=1) </b></p><p><b> {</b></p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p><b> continue;</b></p><p><b> }</b><
70、;/p><p> for(i=0;i<length;i++)</p><p><b> {</b></p><p> if(data[i].name[0]==s[0]&&data[i].name[1]==s[1]&&data[i].name[2]==s[2])</p><p>&l
71、t;b> {</b></p><p> ss[j++]=i;</p><p><b> }</b></p><p><b> }</b></p><p><b> break;</b></p><p><b> }
72、</b></p><p><b> return j;</b></p><p><b> }</b></p><p><b> 四、實現(xiàn)結果</b></p><p><b> 系統(tǒng)界面</b></p><p>&
73、lt;b> 各類招生錄取成績</b></p><p><b> 各批次男女比例</b></p><p><b> 五 課設總結</b></p><p> 在進行幾次上機實習后,我感覺c語言真是一門很神奇的學科,它在只借助一臺計算機,一個vc++,就能帶給人們那么多實用的東西!</p>
74、<p> 而且,我對c語言有了全新的認識,以前不知道的東西在上機之后完全了解了,以前一知半解的東西在上機之后感覺分變得更加明了了。很多錯誤都是始料未及的,往往一點的小差錯都會導致整個程序無法運行或者錯誤運行。</p><p> 在上機實習的前幾節(jié)課,我感覺有點茫然不知所措,只有將書上的相關知識一遍又一遍地了解。</p><p> 在多次了解后,開始理解編程就順利多了。&
75、lt;/p><p><b> 六 程序代碼</b></p><p> #include <stdio.h></p><p> #include <malloc.h></p><p> struct DATA</p><p><b> {</b>
76、</p><p><b> int ID;</b></p><p> char name[4];</p><p> char sex[3];</p><p> int score;</p><p><b> };</b></p><p>
77、void paixu(int*,DATA*,int);</p><p> int sishewuru(double);</p><p> void func1(int*,int*,DATA*,int*,int,int,int,int);//統(tǒng)計男女比例</p><p> int func2(int*,int,DATA*);//查找考生序號</p>
78、<p> void print();</p><p> void main()</p><p><b> {</b></p><p> int length=0,i,yiben,erben,sanben,dazhuan,male[4],female[4];</p><p> int yi,er,sa
79、n,si;</p><p> char input;</p><p> FILE* file=fopen("f1.txt","r"),*file1;</p><p> if(file==NULL)</p><p><b> {</b></p><p>
80、; printf("No such file!\n");</p><p><b> return;</b></p><p><b> }</b></p><p> while(EOF!=fscanf(file,"%*[^\n]\n")) length++;//自動計算考生數(shù)量
81、</p><p> DATA* data=(DATA*)malloc(length*sizeof(DATA));</p><p> int* pai=(int*)malloc(length*sizeof(int));</p><p> rewind(file);</p><p> for(i=0;i<length;i++)<
82、;/p><p><b> {</b></p><p> fscanf(file,"%d %s %s %d",&data[i].ID,&data[i].name,&data[i].sex,&data[i].score);</p><p><b> pai[i]=i;</b>
83、;</p><p><b> }</b></p><p> paixu(pai,data,length);//將1-1000的學生按成績排序</p><p> yiben=sishewuru(length*0.1)-1;//分別按比例進行計算并四舍五入為整數(shù)</p><p> erben=yiben+sishew
84、uru(length*0.15);</p><p> sanben=erben+sishewuru(length*0.2);</p><p> dazhuan=sanben+sishewuru(length*0.25);</p><p> yi=data[pai[yiben]].score;er=data[pai[erben]].score;</p>
85、;<p> san=data[pai[sanben]].score;si=data[pai[dazhuan]].score;</p><p><b> while(1)</b></p><p><b> {</b></p><p><b> print();</b></p&
86、gt;<p> printf("\n請輸入查詢碼:");</p><p> for(input=getchar();;input=getchar())</p><p><b> {</b></p><p> if(!(input>='0'&&input<=
87、39;4'))</p><p><b> {</b></p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><p><b> }</b></p><p> els
88、e break;</p><p><b> }</b></p><p> getchar();</p><p> switch(input)</p><p><b> {</b></p><p><b> case '0':</b&g
89、t;</p><p> printf("\n一類本科招生線:%d\n二類本科招生線:%d\n三類本科招生線:%d\</p><p> \n高職高專招生線:%d\n",yi,er,san,si);</p><p> printf("是否打印為文件?(y/n):");</p><p> if(get
90、char()=='y')</p><p><b> {</b></p><p> file1=fopen("各批次錄取分數(shù)線.txt","w");</p><p> fprintf(file1,"一類本科招生線:%d\n二類本科招生線:%d\</p><
91、p> \n三類本科招生線:%d\n高職高專招生線:%d\n",yi,er,san,si);</p><p> fclose(file1);</p><p><b> }</b></p><p> fflush(stdin);</p><p><b> break;</b>&
92、lt;/p><p><b> case '1':</b></p><p> func1(male,female,data,pai,yiben,erben,sanben,dazhuan);</p><p> printf("一類本科招生線男女比例: %d:%d\n",male[0],female[0
93、]);</p><p> printf("二類本科招生線男女比例: %d:%d\n",male[1],female[1]);</p><p> printf("三類本科招生線男女比例: %d:%d\n",male[2],female[2]);</p><p> printf("高職高專招生線
94、招生線男女比例:%d:%d\n",male[3],female[3]);</p><p> printf("是否打印為文件?(y/n):");</p><p> if(getchar()=='y')</p><p><b> {</b></p><p> file1=
95、fopen("各批次錄取男女比例.txt","w");</p><p> fprintf(file1,"一類本科招生線男女比例: %d:%d\n",male[0],female[0]);</p><p> fprintf(file1,"二類本科招生線男女比例: %d:%d\n",male
96、[1],female[1]);</p><p> fprintf(file1,"三類本科招生線男女比例: %d:%d\n",male[2],female[2]);</p><p> fprintf(file1,"高職高專招生線招生線男女比例:%d:%d\n",male[3],female[3]);</p><p>
97、; fclose(file1);</p><p><b> }</b></p><p> fflush(stdin);</p><p><b> break;</b></p><p><b> case '2':</b></p><
98、p> printf("按考號查詢輸入0 按姓名查詢輸入1\n請輸入查詢碼:");</p><p> for(input=getchar();;input=getchar())</p><p><b> {</b></p><p> if(input!='0'&&
99、input!='1')</p><p><b> {</b></p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><p><b> }</b></p><p&
100、gt; else break;</p><p><b> }</b></p><p> getchar();</p><p> int shuru,j,ss[10];//假設最多10個重名的</p><p> for(j=0;j<10;j++) ss[i]=0;</p><p>
101、 if(input=='0')</p><p><b> {</b></p><p> start1:printf("請輸入考號:");</p><p> for(j=scanf("%d",&shuru);j!=1||shuru/10000!=4211;j=scan
102、f("%d",&shuru))</p><p> {//假設考號開頭為4211</p><p> printf("非法輸入,請重新輸入\n請輸入:");</p><p> fflush(stdin);</p><p><b> }</b></p>&l
103、t;p> getchar();</p><p> j=shuru%10000;//假設考號和序號的關系</p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p><p> shuru,data[j].name,data[j].sex,data[j].score);</p>
104、;<p> if(data[j].score>=yi) printf("一本\n");</p><p> else if(data[j].score>=er) printf("二本\n");</p><p> else if(data[j].score>=san) printf("三本\n")
105、;</p><p> else if(data[j].score>=si) printf("高職高專\n");</p><p> else printf("未過線,請繼續(xù)努力!\n");</p><p> printf("是否繼續(xù)查詢?(y/n):");</p><p>
106、 if(getchar()=='y')</p><p><b> {</b></p><p> fflush(stdin);</p><p> goto start1;</p><p><b> }</b></p><p><b>
107、}</b></p><p><b> else</b></p><p><b> {</b></p><p> start2:printf("請輸入姓名:");</p><p> j=func2(ss,length,data);//查找考生序號<
108、;/p><p> if(j==0) printf("查無此人!\n");</p><p> else if(j==1)</p><p><b> {</b></p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p>
109、<p> data[ss[0]].ID,data[ss[0]].name,data[ss[0]].sex,data[ss[0]].score);</p><p> if(data[ss[0]].score>=yi) printf("一本\n");</p><p> else if(data[ss[0]].score>=er) printf
110、("二本\n");</p><p> else if(data[ss[0]].score>=san) printf("三本\n");</p><p> else if(data[ss[0]].score>=si) printf("高職高專\n");</p><p> else printf
111、("未過線,請繼續(xù)努力!\n");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> printf("有多個考生姓名為%s,數(shù)據(jù)如下:\n",
112、data[ss[0]].name);</p><p> for(j=j-1;j>=0;j--)</p><p><b> {</b></p><p> printf("該生考號:%d 姓名:%s 性別:%s 分數(shù):%d 錄取情況:",</p><p> data[ss[j]].ID,da
113、ta[ss[j]].name,data[ss[j]].sex,data[ss[j]].score);</p><p> if(data[ss[j]].score>=yi) printf("一本\n");</p><p> else if(data[ss[j]].score>=er) printf("二本\n");</p>
114、<p> else if(data[ss[j]].score>=san) printf("三本\n");</p><p> else if(data[ss[j]].score>=si) printf("高職高專\n");</p><p> else printf("未過線,請繼續(xù)努力!\n");<
115、;/p><p><b> }</b></p><p><b> }</b></p><p> printf("是否繼續(xù)查詢?(y/n):");</p><p> if(getchar()=='y')</p><p><b>
116、 {</b></p><p> fflush(stdin);</p><p> goto start2;</p><p><b> }</b></p><p><b> }</b></p><p><b> break;</b>&l
117、t;/p><p><b> case '3':</b></p><p> fclose(file);</p><p> free(data);</p><p><b> return;</b></p><p><b> case '4&
118、#39;:</b></p><p><b> print();</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p>
119、 fclose(file);</p><p> free(data);</p><p><b> }</b></p><p> void paixu(int* pai,DATA* data,int length)</p><p><b> {</b></p><p>
120、; int i,j,temp;</p><p> for(i=0;i<length;i++)</p><p> for(j=i+1;j<length;j++)</p><p> if(data[pai[i]].score<data[pai[j]].score)</p><p><b> {</b&g
121、t;</p><p> temp=pai[i];</p><p> pai[i]=pai[j];</p><p> pai[j]=temp;</p><p><b> }</b></p><p><b> }</b></p><p> in
122、t sishewuru(double l)</p><p><b> {</b></p><p><b> if(l>1)</b></p><p><b> {</b></p><p> if((l-(int)l)<0.5) return (int)l;&l
123、t;/p><p> else return (int)l+1;</p><p><b> }</b></p><p> else return 1;</p><p><b> }</b></p><p> void func1(int* male,int* female
124、,DATA* data,int* pai,int a,int b,int c,int d)</p><p><b> {</b></p><p><b> int i;</b></p><p> for(i=0;i<4;i++) {male[i]=0;female[i]=0;}</p><p
125、> for(i=0;i<=a;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[0]++;</p><p> else female[0]++;</p><p><b> }</b></p
126、><p> for(;i<=b;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[1]++;</p><p> else female[1]++;</p><p><b> }</b&g
127、t;</p><p> for(;i<=c;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[2]++;</p><p> else female[2]++;</p><p><b> }
128、</b></p><p> for(;i<=d;i++)</p><p><b> {</b></p><p> if(data[pai[i]].sex[0]==-60) male[3]++;</p><p> else female[3]++;</p><p><
129、b> }</b></p><p><b> }</b></p><p> void print()</p><p><b> {</b></p><p> printf("--------------------------------高考招生錄取程序-----
130、--------------------------\n");</p><p> printf("今年招生計劃:一類本科招生計劃為 10%\n 二類本科招生計劃為 15%\n\</p><p> 三類本科招生計劃為 20%\n 四類高職高專招生計劃為25%\n");</p>
131、<p> printf("查詢: \n各類招生分數(shù)線輸入 0 各批次男女比例輸入1\</p><p> \n單個學生錄取情況輸入2 退出系統(tǒng)輸入 3\n重新打印初試界面輸入4\n");</p><p><b> }</b></p><p>
132、 int func2(int* ss,int length,DATA* data)</p><p><b> {</b></p><p> int i,j=0;</p><p> char s[4];</p><p><b> while(1)</b></p><p>
133、;<b> {</b></p><p> i=scanf("%s",s);</p><p> fflush(stdin);</p><p><b> if(i!=1) </b></p><p><b> {</b></p><p
134、> printf("非法輸入,請重新輸入\n請輸入:");</p><p><b> continue;</b></p><p><b> }</b></p><p> for(i=0;i<length;i++)</p><p><b> {<
135、;/b></p><p> if(data[i].name[0]==s[0]&&data[i].name[1]==s[1]&&data[i].name[2]==s[2])</p><p><b> {</b></p><p> ss[j++]=i;</p><p><b&
136、gt; }</b></p><p><b> }</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> return j;</b></p><p&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交大錄取分數(shù)線2010
- 2017成人高考調整錄取分數(shù)線
- 全國高考歷年各省錄取分數(shù)線比較與分析
- 各大學2010年錄取分數(shù)線
- 中央美院2014錄取分數(shù)線
- 2016體育本科最低錄取分數(shù)線
- 各專業(yè)錄取分數(shù)線湖北本科
- 2013年自主劃線院校錄取分數(shù)線
- 2018成都高中錄取分數(shù)線
- 全國各高校播音主持錄取分數(shù)線
- 蘭州大學歷年錄取分數(shù)線
- 2015年藝術類分錄取分數(shù)線
- 2016年普通本、專科分省錄取分數(shù)線
- 2015年藝術類分錄取分數(shù)線
- 理學院近三年各專業(yè)高考錄取分數(shù)線
- 佳木斯大學2018分分專業(yè)錄取分數(shù)線
- 蘇州職業(yè)大學2015年錄取分數(shù)線江蘇
- 四川單招各學校專業(yè)錄取分數(shù)線(分數(shù)線僅供參考)
- 河北農(nóng)業(yè)大學歷年錄取分數(shù)線
- 蘇州職業(yè)大學2015年錄取分數(shù)線江蘇
評論
0/150
提交評論