![運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)(共22頁)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/f6798cc4-4272-4986-8bc7-efd1800c08b2/f6798cc4-4272-4986-8bc7-efd1800c08b21.gif)
![運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)(共22頁)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/f6798cc4-4272-4986-8bc7-efd1800c08b2/f6798cc4-4272-4986-8bc7-efd1800c08b22.gif)
![運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)(共22頁)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/f6798cc4-4272-4986-8bc7-efd1800c08b2/f6798cc4-4272-4986-8bc7-efd1800c08b23.gif)
![運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)(共22頁)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/f6798cc4-4272-4986-8bc7-efd1800c08b2/f6798cc4-4272-4986-8bc7-efd1800c08b24.gif)
![運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)(共22頁)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/f6798cc4-4272-4986-8bc7-efd1800c08b2/f6798cc4-4272-4986-8bc7-efd1800c08b25.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)【問題描述】 參加運(yùn)動(dòng)會(huì)有n個(gè)學(xué)校,學(xué)校編號(hào)為1n。比賽分成m個(gè)男子項(xiàng)目,和w個(gè)女子項(xiàng)目。 項(xiàng)目編號(hào)為男子1m,女子m+1m+w。不同的項(xiàng)目取前五名或前三名積分; 取前五名的積分分別為:7、5、3、2、1,前三名的積分分別為:5、3、2; 哪些取前五名或前三名由學(xué)生自己設(shè)定。(m<=20,n<=20)【任務(wù)要求】 功能要求: 1).可以輸入各個(gè)項(xiàng)目的前三名或前五名的成績;2)能統(tǒng)計(jì)各學(xué)校總分,3)可以按學(xué)校編號(hào)、學(xué)??偡?、男女團(tuán)體總分排序輸出;4).可以按學(xué)校編號(hào)查詢學(xué)校某個(gè)項(xiàng)目的情況;可以按項(xiàng)目編號(hào)查詢?nèi)〉们叭蚯拔迕膶W(xué)校。 規(guī)定:輸入數(shù)
2、據(jù)形式和范圍:20以內(nèi)的整數(shù)(如果做得更好可以輸入學(xué)校的名稱,運(yùn)動(dòng)項(xiàng)目的名稱)輸出形式:有中文提示,各學(xué)校分?jǐn)?shù)為整形界面要求:有合理的提示,每個(gè)功能可以設(shè)立菜單,根據(jù)提示,可以完成相關(guān)的功能要求。存儲(chǔ)結(jié)構(gòu):學(xué)生自己根據(jù)系統(tǒng)功能要求自己設(shè)計(jì),但是要求運(yùn)動(dòng)會(huì)的相關(guān)數(shù)據(jù)要存儲(chǔ)在數(shù)據(jù)文件中。(數(shù)據(jù)文件的數(shù)據(jù)讀寫方法等相關(guān)內(nèi)容在c語言程序設(shè)計(jì)的書上,請(qǐng)自學(xué)解決)請(qǐng)?jiān)谧詈蟮纳辖毁Y料中指明你用到的存儲(chǔ)結(jié)構(gòu); 測試數(shù)據(jù):要求使用1、全部合法數(shù)據(jù);2、整體非法數(shù)據(jù);3、局部非法數(shù)據(jù)。進(jìn)行程序測試,以保證程序的穩(wěn)定。測試數(shù)據(jù)及測試結(jié)果請(qǐng)?jiān)谏辖坏馁Y料中寫明;【測試數(shù)據(jù)】自行設(shè)定,注意邊界等特殊情況。*/目 錄一、需
3、求分析(一) 問題分析該系統(tǒng)所應(yīng)包含的信息為:學(xué)校編號(hào)、學(xué)校名稱、運(yùn)動(dòng)項(xiàng)目編號(hào)、運(yùn)動(dòng)項(xiàng)目名稱、學(xué)校總分、男團(tuán)總分和女團(tuán)總分等。(二) 系統(tǒng)功能分析1.根據(jù)基本數(shù)據(jù)輸入相關(guān)的信息2.根據(jù)要求輸出所需信息3.查找所需信息4.結(jié)束運(yùn)行二、概要設(shè)計(jì) 根據(jù)運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)系統(tǒng)問題的分析和設(shè)計(jì)要求,可以將該系統(tǒng)分為四大模塊:輸入信息模塊、輸入信息模塊、查詢信息模塊和退出系統(tǒng)模塊 (1)輸入信息模塊實(shí)現(xiàn)信息的輸入和存檔(2)輸出信息是根據(jù)要求實(shí)現(xiàn)相關(guān)信息的排序輸出 (3)查詢信息根據(jù)要求查詢信息(4)退出系統(tǒng)結(jié)束系統(tǒng) 輸出信息模塊退出系統(tǒng)模塊查詢信息模塊輸入信息模塊運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)系統(tǒng)三、詳細(xì)設(shè)計(jì)選擇操作(一)
4、主控模塊設(shè)計(jì) main(); case1 case2 case3 case4退出系統(tǒng)輸出信息查詢信息輸入信息 default 輸入有誤(二)輸出信息模塊設(shè)計(jì) design1( );開始輸入學(xué)校編號(hào)項(xiàng)目編號(hào)學(xué)校名稱項(xiàng)目名稱名次是否循環(huán) Yes No統(tǒng)計(jì)總分?jǐn)?shù)據(jù)存入文件 是否循環(huán) yes 結(jié)束(三)輸出信息模塊設(shè)計(jì) design2( );開始排序選擇按學(xué)??偡峙判虬磁畧F(tuán)總分排序按男團(tuán)總分排序按學(xué)校編號(hào)排序輸出 Yes 是否繼續(xù) 結(jié)束(四)查詢模塊 design3();開始選擇按項(xiàng)目編號(hào)查詢按學(xué)校編號(hào)查詢 Yes是否繼續(xù)是否繼續(xù) Yes No No 輸出 結(jié)束四、程序調(diào)試與實(shí)現(xiàn)學(xué)校編號(hào)學(xué)校名稱項(xiàng)目編
5、號(hào)1名次項(xiàng)目編號(hào)2名次項(xiàng)目編號(hào)3名次項(xiàng)目名稱(3名)跳遠(yuǎn)(5名)100m(3名)跳高1北理工12/302吉大21/513北師大3431、 全部合法數(shù)據(jù)2、 整體非法數(shù)據(jù)3、局部非法數(shù)據(jù)五、用戶使用說明1. 首先,請(qǐng)根據(jù)要求輸入所需數(shù)據(jù)。2. 系統(tǒng)自動(dòng)設(shè)置學(xué)校個(gè)數(shù):3個(gè);男子項(xiàng)目:2個(gè);女子項(xiàng)目:1個(gè)。如果需要更改其個(gè)數(shù),只需將#define n 3(學(xué)校數(shù)目)、#define m 2(男子項(xiàng)目數(shù)目)、#define w 1(女子項(xiàng)目數(shù)目)中的個(gè)數(shù)進(jìn)行更改,即可解決問題。3.輸入的數(shù)據(jù)存入名叫num.txt的文檔中,如有需要可以查詢。六、附錄源代碼#include<stdio.h>
6、#include<math.h> #include <conio.h> #include <process.h> #define n 3/學(xué)校數(shù)目#define m 2/男子項(xiàng)目數(shù)目#define w 1/女子項(xiàng)目數(shù)目#define null 0 void design1();void design2();void design3();int choice,sign;typedef struct int itemnum; /項(xiàng)目編號(hào)char name;/項(xiàng)目名稱int top; /取名次的數(shù)目int range5; /名次int mark5; /分?jǐn)?shù)item
7、node; /定義項(xiàng)目結(jié)點(diǎn)的類型typedef struct int schoolnum; /學(xué)校編號(hào)char schoolname20;/學(xué)校名字int score; /學(xué)??偡謎nt mscore; /男團(tuán)體總分int wscore; /女團(tuán)體總分itemnode cm+w; /項(xiàng)目數(shù)組headnode ;/定義頭結(jié)點(diǎn)類型headnode hn;/定義一個(gè)頭結(jié)點(diǎn)數(shù)組void main() /主函數(shù) printf("=歡迎使用運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)系統(tǒng)=n"); printf("* 1.輸入信息*n"); printf("* 2.輸出信息*n&quo
8、t;); printf("* 3.查詢信息*n"); printf("* 4.退出系統(tǒng)*n"); printf("=n");printf("n");printf("請(qǐng)選擇要實(shí)現(xiàn)步驟的編號(hào):");scanf("%d",&choice); printf("n");switch(choice) case 1: /輸入信息design1();break; case 2: /輸出信息design2();break;case 3: /查詢信息design3()
9、;break;case 4:/退出系統(tǒng)printf("使用結(jié)束n");break;default:/輸入有誤printf("輸入有誤,請(qǐng)選擇一個(gè)正確的編號(hào)n");main();break; void design1() /輸入信息 FILE *fp1;int i,j,k,s; for(i=0;i<n;i+) hi.score=0; hi.mscore=0; hi.wscore=0; /初始化頭結(jié)點(diǎn)for(i=0;i<n;i+) printf("請(qǐng)輸入學(xué)校編號(hào):"); scanf("%d",&hi
10、.schoolnum); printf(" 學(xué)校名稱:"); scanf("%s",&hi.schoolname); for(j=0;j<m+w;j+) printf(" 項(xiàng)目編號(hào):"); scanf("%d",&hi.cj.itemnum);printf(" 項(xiàng)目名稱:"); scanf("%s",&);printf(" 取前幾名(5/3)"); scanf("%d",&hi.
11、cj.top); printf(" 取得幾個(gè)名次:"); scanf("%d",&k); /輸入項(xiàng)目信息for(s=0;s<5;s+) hi.cj.ranges=0, hi.cj.marks=0; /初始化排名和分?jǐn)?shù)for(s=0;s<k;s+) if(hi.cj.top=3) /取前3名記分 printf(" 取得名次:"); scanf("%d",&hi.cj.ranges); /輸入所獲名次信息printf(" 取得名次:"); scanf("%d&q
12、uot;,&hi.cj.ranges);switch(hi.cj.ranges) case 0: hi.cj.marks=0;break; case 1: hi.cj.marks=5; break; case 2: hi.cj.marks=3; break; case 3: hi.cj.marks=2; break; else if (hi.cj.top=5)/取前5名記分printf(" 取得名次:"); scanf("%d",&hi.cj.ranges); /輸入所獲名次信息switch(hi.cj.ranges) case 0:hi
13、.cj.marks=0; break; case 1: hi.cj.marks=7; break; case 2: hi.cj.marks=5; break; case 3: hi.cj.marks=3; break; case 4:hi.cj.marks=2;break; case 5: hi.cj.marks=1; break; else printf("輸入有誤,請(qǐng)重新輸入!n");design1();hi.score=hi.score+hi.cj.marks; /記錄總分if(j<=m-1) /記錄男團(tuán)總分hi.mscore=hi.mscore+hi.cj.m
14、arks; else /記錄女團(tuán)總分hi.wscore=hi.wscore+hi.cj.marks; printf("n"); fp1=fopen("num.txt","a");fprintf(fp1,"*運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)系統(tǒng)*n");fprintf(fp1,"學(xué)校編號(hào) 學(xué)校名字 學(xué)??偡?男團(tuán)總分 女團(tuán)總分 n");fprintf(fp1,"*n");for(i=0;i<n;i+) fprintf(fp1," %2d",hi.schoolnum);
15、/學(xué)校編號(hào)fprintf(fp1," %10s",hi.schoolname); /學(xué)校名稱fprintf(fp1," %2d",hi.score); /學(xué)??偡謋printf(fp1," %2d",hi.mscore); /男團(tuán)總分fprintf(fp1," %2dn",hi.wscore); /女團(tuán)總分fclose(fp1);main();void design2() /輸出函數(shù) int i,j,k; int remembern; int sign; do printf("*1.按學(xué)校編號(hào)輸出.n&q
16、uot;); printf("*2.按學(xué)??偡州敵?n"); printf("*3.按男團(tuán)總分輸出.n"); printf("*4.按女團(tuán)總分輸出.n");printf("n");printf("請(qǐng)選擇編號(hào):"); scanf("%d",&choice); switch(choice) case 1: /按學(xué)校編號(hào)輸出for(i=0;i<n;i+) printf("學(xué)校編號(hào):%dn",hi.schoolnum);printf(" 學(xué)
17、校名稱:%sn",hi.schoolname);printf(" 學(xué)??偡?%dn" ,hi.score); printf(" 男團(tuán)總分:%dn",hi.mscore); printf(" 女團(tuán)總分: %dnnn",hi.wscore); break; case 2: /按學(xué)??偡州敵鰂or(i=0;i<n;i+) rememberi=i; for(i=0;i<n;i+) for(j=i+1;j<n;j+) if(hrememberi.score<hj.score) k=rememberi; reme
18、mberi=rememberj;rememberj=k; for(i=0;i<n;i+) printf("學(xué)校編號(hào):%dn",hrememberi.schoolnum); printf(" 學(xué)校名稱:%sn",hrememberi.schoolname);printf(" 學(xué)??偡?%dn" ,hrememberi.score); printf(" 男團(tuán)總分:%dn",hrememberi.mscore); printf(" 女團(tuán)總分:%dn",hrememberi.wscore); br
19、eak; case 3: /按男團(tuán)總分輸出for(i=0;i<n;i+) rememberi=i; for(i=0;i<n;i+) for(j=i+1;j<n;j+) if(hrememberi.mscore<hj.mscore) k=rememberi;rememberi=rememberj; rememberj=k; for(i=0;i<n;i+) printf("學(xué)校編號(hào):%dn",hrememberi.schoolnum); printf(" 男團(tuán)總分:%dn",hrememberi.mscore);printf(&
20、quot; 學(xué)校名稱:%sn",hrememberi.schoolname);printf(" 學(xué)??偡?%dn" ,hrememberi.score); printf(" 女團(tuán)總分:%dn",hrememberi.wscore); break; case 4: /按女團(tuán)總分輸出for(i=0;i<n;i+) rememberi=i; for(i=0;i<n;i+) for(j=i+1;j<n;j+) if(hrememberi.wscore<hj.wscore)k=rememberi; rememberi=rememb
21、erj;rememberj=k; for(i=0;i<n;i+) printf("學(xué)校編號(hào):%dn",hrememberi.schoolnum); printf(" 學(xué)校名稱:%sn",hrememberi.schoolname);printf(" 女團(tuán)總分: %dnnn",hrememberi.wscore);printf(" 學(xué)??偡?%dn" ,hrememberi.score); printf(" 男團(tuán)總分:%dn",hrememberi.mscore); break; print
22、f("請(qǐng)選擇(1.繼續(xù);2.跳出)n"); scanf("%d",&sign); while(sign=1); main(); void design3() /查詢函數(shù) int i,j,k,s;printf("*1.按學(xué)校編號(hào)查詢.n"); printf("*2:按項(xiàng)目編號(hào)查詢.n");printf("n");printf("請(qǐng)選擇查詢方式:");scanf("%d",&choice); printf("n");swit
23、ch(choice) case 1: do printf("請(qǐng)輸入查詢的學(xué)校編號(hào):"); scanf("%d",&i); printf("n");if(i>n) printf("錯(cuò)誤:這個(gè)學(xué)校沒有參加此次運(yùn)動(dòng)會(huì)!n"); else printf(" 項(xiàng)目編號(hào):"); scanf("%d",&j); printf("n");printf("n");if(j>m+w|j=0) printf("此次運(yùn)動(dòng)會(huì)沒有這個(gè)項(xiàng)目nnn"); /學(xué)校編號(hào)超出范圍,則輸出警告else pri
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋼板樁租賃合同范本
- 甲乙丙合作協(xié)議書范本
- 社區(qū)活動(dòng)中心地暖安裝合同
- 手房分期付款合同
- 搬家保險(xiǎn)合同樣本
- 店鋪轉(zhuǎn)租合同協(xié)議書
- 棋牌室裝修用工協(xié)議
- 中央空調(diào)維保合同
- 變電站工程安裝合同
- 鐵藝安裝合同協(xié)議書
- GB/T 6417.1-2005金屬熔化焊接頭缺欠分類及說明
- 科創(chuàng)板知識(shí)測評(píng)20個(gè)題目的答案
- 2023年湖北成人學(xué)位英語考試真題及答案
- 走好群眾路線-做好群眾工作(黃相懷)課件
- NY∕T 4001-2021 高效氯氟氰菊酯微囊懸浮劑
- 《社會(huì)主義市場經(jīng)濟(jì)理論(第三版)》第七章社會(huì)主義市場經(jīng)濟(jì)規(guī)則論
- 漢聲數(shù)學(xué)圖畫電子版4冊(cè)含媽媽手冊(cè)文本不加密可版本-29.統(tǒng)計(jì)2500g早教
- 中國監(jiān)察制度史
- 搬家公司簡介(15個(gè)范本)
- 典范英語-2備課材料2a課件
- 抽水蓄能輔助洞室施工方案
評(píng)論
0/150
提交評(píng)論