版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C程序設(shè)計(jì)實(shí)習(xí)報(bào)告 校際運(yùn)動(dòng)會(huì)管理系統(tǒng)一、題目要求(1)信息初始化 輸入:N參賽學(xué)??倲?shù),M男子競(jìng)賽項(xiàng)目數(shù), W女子競(jìng)賽項(xiàng)目數(shù); 各項(xiàng)目名次取法有如下幾種:錯(cuò)誤!未找到引用源。 取前5名:第一名得分 7,第二名得分5,第三名得分3,第四名得分2,第五名得分1; 取前3名:第一名得分5,第二名得分3,第三名得分2; 用戶自定義:各名次權(quán)值由用戶指定。(2)提醒用戶填寫比賽結(jié)果,輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員信息。(3)所有信息記錄完畢后,用戶可以查詢各個(gè)學(xué)校的比賽成績(jī),生成團(tuán)體總分報(bào)表,察看參賽學(xué)校信息和比賽項(xiàng)目信息等。二.總體設(shè)計(jì)分析整個(gè)系統(tǒng),根據(jù)以上的需求分析及題目要求,可將整個(gè)系統(tǒng)的設(shè)計(jì)分為以下五個(gè)
2、模塊:信息輸入、錄入比賽結(jié)果、查詢信息、退出.Saveathele ()保存運(yùn)動(dòng)員信息1 總的模塊圖 Saveschool ()保存學(xué)校信息InformationSaveprogram ()保存項(xiàng)目信息Savescore() 比賽結(jié)果錄入Main Ttzf () 查詢團(tuán)體總分Csxx ()查詢參賽學(xué)校信息Search ( )Bsxm ()查詢團(tuán)體總分Exi t(0)圖1 整體模塊圖 三、 詳細(xì)設(shè)計(jì) 主函數(shù)主函數(shù)一般設(shè)計(jì)的較為簡(jiǎn)潔,只提供輸入、功能處理和輸出部分的函數(shù)調(diào)用。其中各功能模塊用菜單方式選擇。另外菜單部分也可以寫成函數(shù)。流程圖顯示一系列功能選項(xiàng)輸入,判斷是否是4根據(jù)的值調(diào)用各功能模塊函
3、數(shù)圖主函數(shù)流程圖 Y程序void main()menu(); void menu()int n,w1;do puts("tt*_ Welcome to load sports system! _*n"); puts("tt*MENU*n"); puts("tt* 1.Enter the information *n"); puts("tt* 2.Score 比賽結(jié)果錄入 *n"); puts("tt* 3.Search *n"); puts("tt* 4.Exit *n");
4、 puts("tt*n"); printf("Choice your number(1-4): bb"); scanf("%d",&n); if (n<1|n>4) w1=1; getchar(); else w1=0; while (w1=1); switch(n) case 1:Information();break; /輸入信息 case 2:savescore();break;/比賽結(jié)果錄入 case 3:Search();break;/查詢模塊 case 4:exit(0); 2. 各功能模塊設(shè)計(jì)(1)
5、信息輸入模塊一是參賽學(xué)校信息,二是參賽運(yùn)動(dòng)員信息,三是比賽項(xiàng)目信息,分別輸入并保存信息輸入讀入、顯示參賽學(xué)校讀入、顯示運(yùn)動(dòng)員讀入比賽項(xiàng)目圖信息輸入模塊流程圖void Information() int n,w ; do puts("nnn"); puts("tt*_ Welcome to load 信息錄入 system! _*n"); puts("tt*MENU*n"); puts("tt* 1.saveathlete *n"); puts("tt* 2.saveschool *n"); pu
6、ts("tt* 3.saveprogram() *n"); puts("tt* 4.back *n"); puts("tt*n"); printf("Choic your number(1-4): bb"); scanf("%d",&n); if (n<1|n>4) w=1;getchar(); else w=0; while (w=1); switch(n) case 1 : saveathlete(); break;/ 保存運(yùn)動(dòng)員信息子函數(shù) case 2 : savesc
7、hool(); break;/保存學(xué)校信息子函數(shù) case 3 : saveprogram();break;/保存項(xiàng)目比賽信息子函數(shù) case 4 : exit(0); (2) 結(jié)果錄入模塊錄入運(yùn)動(dòng)員比賽得分圖4比賽結(jié)果錄入模塊流程圖分析計(jì)算各學(xué)??偡?3)查詢信息模塊分析查詢信息模塊提供按不同方式查詢各種信息機(jī)返回功能,其中各功能模塊用菜單方式選擇。菜單部分也可寫成函數(shù)。查詢信息模塊查詢學(xué)校查詢運(yùn)動(dòng)員查詢項(xiàng)目返回主菜單圖6查詢信息模塊流程圖定義結(jié)構(gòu)體指針UNI*next輸入學(xué)校名字判斷輸入名字與結(jié)構(gòu)體中學(xué)校名是否相同指針變量值向下一組數(shù)據(jù)調(diào)用輸出函數(shù)圖8 查詢學(xué)校名流程圖 結(jié)果各模塊界面圖如
8、圖:() 主菜單函數(shù)() 信息錄入模塊() 查詢子菜單() 按學(xué)校名字查詢信息(5) 按項(xiàng)目查詢項(xiàng)目信息() 查詢團(tuán)體總分程序代碼:#include<stdio.h>#include<conio.h>#include<stdlib.h>#include<string.h>#define SIZE 9#define N 3#define WM 3void bsxm();void csxx();void Information();int main();void menu();void printf_back();void saveathlete()
9、;void saveprogram();void saveschool();void savescore();void Search();void ttzf();int i;FILE *fp1,*fp2,*fp3,*fp4;struct athlete/定義運(yùn)動(dòng)員信息char univ5;char name8;char prog15; char mingci5;int score;atSIZE;struct xuexiao/定義學(xué)校信息char univ5;char prog15;int num_athlete;xxN;struct program/定義項(xiàng)目信息char prog5;int q
10、uming; char ath15;char ath25;char univ15;char univ25;proWM;struct zongfen /定義學(xué)校得分信息char univ5;char prog15;char prog25;char prog35;int score1;int score2;int score3;int total_score;zfN;void Information() int n,w ; do puts("nnn"); puts("tt*_ 歡迎進(jìn)入信息錄入系統(tǒng) _*n"); puts("tt*菜單*n"
11、;); puts("tt* 1.運(yùn)動(dòng)員 *n"); puts("tt* 2.學(xué)校 *n"); puts("tt* 3.項(xiàng)目信息 *n"); puts("tt* 4.返回 *n"); puts("tt*n"); printf("請(qǐng)選擇(1-4): bb"); scanf("%d",&n); if (n<1|n>4) w=1;getchar(); else w=0; while (w=1); switch(n) case 1 : savea
12、thlete(); break;/ 保存運(yùn)動(dòng)員信息子函數(shù) case 2 : saveschool(); break;/保存學(xué)校信息子函數(shù) case 3 : saveprogram();break;/保存項(xiàng)目比賽信息子函數(shù) case 4 : exit(0); void saveathlete()/保存運(yùn)動(dòng)員信息子函數(shù) printf("n請(qǐng)輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員的信息:");for(i=0;i<SIZE;i+) printf("n請(qǐng)輸入第%d個(gè)運(yùn)動(dòng)員的信息:n",i+1);printf("姓名:"); scanf("%s&q
13、uot;,); printf("學(xué)校:"); scanf("%s",ati.univ); printf("參賽項(xiàng)目:"); scanf("%s",g);printf("名次:");scanf("%s",ati.mingci); printf("得分:"); scanf("%d",&ati.score);fp1=fopen("ath","w");for(i=0;
14、i<SIZE;i+)if(fwrite(&ati,sizeof(struct athlete),1,fp1)!=1)printf("File write error!n");fclose(fp1);fp1=fopen("運(yùn)動(dòng)員","r"); printf("n現(xiàn)在各運(yùn)動(dòng)員的信息如下:nn"); printf("姓名 學(xué)校 項(xiàng)目 名次 得分n");for(i=0;i<SIZE;i+)fread(&ati,sizeof(struct athlete),1,fp1); pr
15、intf("%-10s%-10s%-18s%-10s%dn",,ati.univ,g,ati.mingci,ati.score);fclose(fp1);printf_back();void saveschool()/保存學(xué)校信息子函數(shù)printf("n請(qǐng)輸入各參賽學(xué)校的信息:");for(i=0;i<N;i+)printf("n請(qǐng)輸入第%d個(gè)學(xué)校的信息:n",i+1);printf("學(xué)校:");scanf("%s",xxi.univ);printf(&qu
16、ot;參賽的項(xiàng)目:");scanf("%s",g);printf("參賽者數(shù):");scanf("%d",&xxi.num_athlete);fp3=fopen("學(xué)校","w");for(i=0;i<N;i+)if(fwrite(&xxi,sizeof(struct xuexiao),1,fp3)!=1)printf("File write error!n");fclose(fp3); printf_back();void sa
17、veprogram()/保存項(xiàng)目比賽信息子函數(shù)printf("n請(qǐng)輸入關(guān)于比賽項(xiàng)目的信息:");for(i=0;i<WM;i+)printf("n請(qǐng)輸入第%d項(xiàng)比賽的信息:n",i+1);printf("項(xiàng)目:");scanf("%s",g);printf("取分情況:");scanf("%d",&proi.quming);printf("參賽者1:");scanf("%s",proi.ath1);prin
18、tf("所屬學(xué)校:");scanf("%s",proi.univ1);printf("參賽者2:");scanf("%s",proi.ath2);printf("所屬學(xué)校:");scanf("%s",proi.univ2); fp4=fopen("pr","w");for(i=0;i<N;i+)if(fwrite(&proi,sizeof(struct program),1,fp4)!=1)printf("Fil
19、e write error!n");fclose(fp4); printf_back();void savescore()/保存學(xué)校得分情況子函數(shù)printf("N-參賽學(xué)??倲?shù),M-男子競(jìng)賽項(xiàng)目數(shù),W-女子競(jìng)賽項(xiàng)目數(shù)。n");printf("W.100-女子一百米比賽,M.100-男子一百米,M.200-男子兩百米。n");printf("n各項(xiàng)名次得分權(quán)值如下:n");printf("取前三名:第一名5分 第二名3分 第三名2分n");printf("n請(qǐng)輸入各學(xué)校的得分情況:")
20、; for(i=0;i<N;i+)printf("n請(qǐng)輸入第%d個(gè)學(xué)校的得分情況:n",i+1);printf("學(xué)校:");scanf("%s",zfi.univ);printf("參賽項(xiàng)目1:");scanf("%s",g1);printf("得分:");scanf("%d",&zfi.score1);printf("參賽項(xiàng)目2:");scanf("%s",g2);pri
21、ntf("得分:");scanf("%d",&zfi.score2);printf("參賽項(xiàng)目3:");scanf("%s",g3);printf("得分:");scanf("%d",&zfi.score3);zfi.total_score=zfi.score1+zfi.score2+zfi.score3; fp2=fopen("zfen","w");for(i=0;i<N;i+)if(fwrite(
22、&zfi,sizeof(struct zongfen),1,fp2)!=1)printf("File write error!n");fclose(fp2); printf_back();void Search()int n,w2;do puts("tt*_ 歡迎進(jìn)入搜索系統(tǒng)! _*n"); puts("tt*菜單*n"); puts("tt* 1.查看團(tuán)體總分 *n");/查看團(tuán)體總分 puts("tt* 2.查看參賽學(xué)校信息 *n");/查看參賽學(xué)校信息! puts("tt
23、* 3.查看比賽項(xiàng)目信息 *n");/查看比賽項(xiàng)目信息! puts("tt* 4.退出 *n");/退出 puts("tt*n"); printf("請(qǐng)選擇(1-4): bb"); scanf("%d",&n); if (n<1|n>4) w2=1; getchar(); else w2=0; while (w2=1); switch(n) case 1:ttzf();break; case 2: csxx();break; case 3:bsxm();break; case 4: e
24、xit(0);break; default: printf("未進(jìn)行任何操作!"); void ttzf()/查看學(xué)校團(tuán)體總分子函數(shù)fp2=fopen("總分","r"); printf("n各學(xué)校的團(tuán)體總分情況如下:nn"); printf("學(xué)校 參賽項(xiàng)目 總分n");for(i=0;i<N;i+)fread(&zfi,sizeof(struct zongfen),1,fp2); printf("%-8s%s,%s,%-12s%-12dn",zfi.univ
25、,g1,g2,g3,zfi.total_score);fclose(fp2);printf_back();void csxx()/查看參賽學(xué)校信息子函數(shù) fp3=fopen("xxiao","r"); printf("n各參賽學(xué)校的情況如下:nn"); printf("學(xué)校 參賽項(xiàng)目 參賽者數(shù)n");for(i=0;i<N;i+)fread(&xxi,sizeof(struct xuexiao),1,fp3); printf("%-8s%-20s%-12dn",xxi.univ,g,xxi.num_athlete);fclose(fp3); printf_back();void bsxm()/查看比賽項(xiàng)目子函數(shù) fp4=fopen("pr","r"); printf("n各比賽項(xiàng)目的信息如下:nn"); printf("項(xiàng)目 取分情況 參賽者1 所屬學(xué)校 參賽者2 所屬學(xué)校n");for(i=0;i<N;i+)fread
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度圖書寄賣代理合同模板3篇
- 2025年度行政安全防范體系構(gòu)建合同3篇
- 2025年新型城鎮(zhèn)化項(xiàng)目裝修垃圾清運(yùn)及資源化利用合同3篇
- 2024年環(huán)保項(xiàng)目投資與建設(shè)合同
- 2025-2030年(全新版)中國(guó)氮化硅基陶瓷行業(yè)發(fā)展?fàn)顩r與投資戰(zhàn)略規(guī)劃研究報(bào)告
- 2025-2030年(全新版)中國(guó)乳糖酶行業(yè)未來發(fā)展趨勢(shì)及前景調(diào)研分析報(bào)告
- 2025-2030年中國(guó)骨密度檢測(cè)儀行業(yè)市場(chǎng)運(yùn)行動(dòng)態(tài)分析與營(yíng)銷策略研究報(bào)告
- 2025-2030年中國(guó)飾面板行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)醋酸乙烯產(chǎn)業(yè)十三五規(guī)劃與投資風(fēng)險(xiǎn)評(píng)估報(bào)告
- 2025-2030年中國(guó)超微細(xì)二氧化硅氣凝膠市場(chǎng)規(guī)模分析及投資前景規(guī)劃研究報(bào)告
- 大型活動(dòng)聯(lián)合承辦協(xié)議
- 工程項(xiàng)目采購(gòu)與供應(yīng)鏈管理研究
- 2024年吉林高考語文試題及答案 (2) - 副本
- 拆除電纜線施工方案
- 搭竹架合同范本
- Neo4j介紹及實(shí)現(xiàn)原理
- 焊接材料-DIN-8555-標(biāo)準(zhǔn)
- 工程索賠真實(shí)案例范本
- 重癥醫(yī)學(xué)科運(yùn)用PDCA循環(huán)降低ICU失禁性皮炎發(fā)生率品管圈QCC持續(xù)質(zhì)量改進(jìn)成果匯報(bào)
- 個(gè)人股權(quán)證明書
- 醫(yī)院運(yùn)送工作介紹
評(píng)論
0/150
提交評(píng)論