語言課程設計任務書_第1頁
語言課程設計任務書_第2頁
語言課程設計任務書_第3頁
語言課程設計任務書_第4頁
語言課程設計任務書_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、課 程 設 計 任 務 書課程名稱 C語言程序設計 課題名稱運動會管理系統(tǒng) 專 業(yè) 機械設計制造及其自動化 班 級 機械設計0991 學 號 200902010309 姓 名 陳炳成 指導教師黃曉宇 黃哲 陳多 2011年 6 月 8 日湖南工程學院課 程 設 計 任 務 書課程名稱 C語言程序設計課 題 班級成績管理系統(tǒng)等八個專業(yè)班級 機械設計0991 學生姓名 陳炳成 學 號 200902010309 指導老師 黃曉宇 黃哲 陳多 審 批 任務書下達日期 2011年 6 月 8 日任務完成日期 2011年 7 月 9 日一、設計內容與設計要求1設計內容:課題八:運動會管理系統(tǒng)1、問題描述:

2、對一個有N個單位(學校),每個單位參加N個運動項目。該系統(tǒng)實現(xiàn)對運動會的運動員成績錄入、運動員名次計算、團體總分計算、輸出個人及團體成績表等操作的管理。2、功能要求:1)本系統(tǒng)采用一個以上的結構體數組,每個數據的結構應當包括:單位編號、項目編號、項目名次個數、姓名、名次、得分;單位編號、成績單表、男子團體總分、女子團體部分等。2)本系統(tǒng)顯示這樣的菜單:請選擇系統(tǒng)功能項:1、項目設置2、成績錄入3、成績查詢4、成績打印5、退出系統(tǒng)3)執(zhí)行一個具體的功能之后,程序將重新顯示菜單。3、算法提示:1)數據結構:結構體類型數組。 2)數 據庫結構:該系統(tǒng)的基本數據庫如下。 4、測試數據:單位數為3、運動

3、項目數3、運動員其它信息(數據任意)對該系統(tǒng)有興趣的同學可以在實現(xiàn)上述基本功能后,完善系統(tǒng)的其它功能。5、成績加分: 對采用鏈表、磁盤文件等模式完成上述任務者給予加分。2設計要求:掌握結構化程序設計的主體思想,以自頂向下逐步求精的方法編制程序解決一些實際的問題,為將來編寫軟件積累一些典型的案例處理經驗。(1)按學號順序選課題號,并在規(guī)定的時間內獨自完成相關課題的C源程序編寫、調整和運行。源程序及編譯生成各文件均保存;(2)按本任務書的要求,編寫課程設計報告(Word文檔格式)。并用A4的復印紙打印并裝訂; (3)在2011年7月4日附:課程設計報告內容要求如下:一、 封面 二、 課程設計任務書

4、三、 課程設計主文檔內容如下:1、 課程設計題目 :運動會管理系統(tǒng)2、 課程設計目的 :提高同學對C語言的綜合應用能力3、 課程設計主要任務 :實現(xiàn)對運動會對運動員成績的錄入、運動員名次計算、團體總分計算、輸出個人及團體成績表等操作的管理4、 設計環(huán)境 :AMD Athlon(tm) II X2 240 Processor 2.8GHz, 1.75 GB 的內存5、 總體設計方案的選定1、運動項目2、成績錄入3、成績查詢4、成績打印5、退出系統(tǒng)單位個數輸入1至5中的一個數姓名男子項目女子項目取前3或5已結束項目單位編號輸出結果結束運動會管理系統(tǒng)(主控模塊和各子模塊的設計方法及框圖)6、源程序清

5、單:#include <conio.h> #include<stdlib.h> #include<stdio.h>#include <string.h>int n,m,w;struct result /*定義比賽名次列表元素*/int scnum; /*單位編號*/ char name20; /*姓名*/ int position; /*名次*/ int score; /*得分*/;struct match /*定義項目結構體*/int matnum; /*項目編號*/ int num; /*項目名次個數*/ struct result list

6、5; /*名詞列表數組*/;struct sclist /*定義成績單元素*/int matnum; /*項目編號*/ int position; /*名次*/ char name20; /*姓名*/ int score; /*得分*/;struct school /*定義單位結構體*/int scnum; /*單位編號*/ struct sclist list50; /*成績單列表數組*/ int team; /*團體總分*/ int mteam; /*男子團體總分*/ int fteam; /*女子團體總分*/ int num; /*累加數*/;struct match ma50;stru

7、ct school sc20;void score(int a,int b) /*得分分配函數*/if(b=3) maa-1.list0.score=5; maa-1.list1.score=3; maa-1.list2.score=2; if(b=5) maa-1.list0.score=7; maa-1.list1.score=5; maa-1.list2.score=3; maa-1.list3.score=2; maa-1.list4.score=1;void input(int a) /*輸入函數*/ int i ; doprintf("n第%d項:取前幾名(3/5)?&q

8、uot;,a); scanf("%d",&maa-1.num); if(maa-1.num!=3)&&(maa-1.num!=5) printf("n!error:輸入的數應為3或5!n"); while(maa-1.num!=3)&&(maa-1.num!=5); score(a,maa-1.num); /*調用得分分配函數*/ for(i=0;i<maa-1.num;i+) maa-1.listi.position=i+1; printf("n第%d名",i+1);printf(&qu

9、ot;n單位編號:"); scanf("%d",&maa-1.listi.scnum); printf("姓名:"); scanf("%s",&); printf("得分:%d",maa-1.listi.score);void index() /*整理函數*/int i,j,k,t; for(i=0;i<n;i+) sci.scnum=i+1; /*初始化校號*/ sci.num=0; /*初始化累加數*/ for(i=0;i<m+w;i+) f

10、or(j=0;j<mai.num;j+) for(k=0;k<n;k+) if(mai.listj.scnum=sck.scnum)sck.listsck.num.matnum=mai.matnum; sck.listsck.num.position=mai.listj.position; for(t=0;t<20;t+)t=t;sck.listsck.num.score=mai.listj.score; sck.num+;void teamsco() /*團體成績計算函數*/int i,j; for(i=0

11、;i<n;i+) sci.team=0; sci.mteam=0; sci.fteam=0; /*初始化*/ for(i=0;i<n;i+) for(j=0;j<sci.num;j+) sci.team=sci.team+sci.listj.score; /*團體成績計算*/ if(sci.listj.matnum<=m) sci.mteam=sci.mteam+sci.listj.score; /*男子團體成績計算*/ else sci.fteam=sci.fteam+sci.listj.score; /*女子團體成績計算*/void output() /*輸出單位成

12、績列表函數*/ int i,a;printf("n單位編號:%dn",maa-1.listi.scnum);printf("比賽項目編號 名次 姓名 得分n");for(i=0;i<sca-1.num;i+)printf("%6d%10d%10s%15dn",sca-1.listi.matnum,sca-1.listi.position,,sca-1.listi.score);void teamput() /*輸出團體報表函數*/int i; printf("n團體成績報表n"

13、); printf("單位編號 團體總分 男子團體總分 女子團體總分n"); for(i=0;i<n;i+)printf("%4d%7d%11d%13dn",sci.scnum,sci.team,sci.mteam,sci.fteam);void xmsz()system("cls");printf("請輸入參加運動會的單位個數:");scanf("%d",&n);printf("n輸入男子項目個數:");scanf("%d",&m)

14、;printf("n輸入女子項目個數:");scanf("%d",&w);printf("n本次運動會有%d個單位參加,共設%d個比賽項目,其中男子項目%d個,女子項目%d個。n",n,m+w,m,w);int c=1;while(c!=0) printf("n輸入0返回主菜單:"); scanf("%d",&c); if(c=0) break;void cjlr()int i,c; /*c為項目編號*/system("cls");printf("請

15、輸入比賽結果資料n");for(i=0;i<m+w;i+)mai.matnum=i+1; /*初始化項目編號*/c=1; /*初始化c*/while(c!=0)printf("n請輸入已結束的比賽項目編號(0=COTINUE):");scanf("%d",&c);if(c>0)&&(c<=m+w)input(c); /*調用輸入函數*/else if(c=0) break; else printf("n!error:輸入的數應為1-%d之間的整數!n",m+w); /*輸入出錯信息*

16、/ printf("nLoading.n"); /*稍后*/index(); /*調用整理函數*/ teamsco(); /*調用團體成績計算函數*/void cjdy()teamput(); /*調用輸出團體報表函數*/int c=1; /*初始化c*/while(c!=0)scanf("%d",&c);if(c=0) break; else if(c>=0)&&(c<=m+w) output(); /*調用出單輸位績成列表函數*/ else printf("n!error:輸入的數應為1-%d之間的整數!

17、n",m+w); /*輸入出錯信息*/ system("cls");/*清屏函數*/printf("n謝謝!請多多指教!n");void cjcx() int c=1; /*初始化c*/while(c!=0)printf("nn請輸入單位編號查詢成績列表(0=EXIT):");scanf("%d",&c);if(c=0) break; else if(c>=0)&&(c<=m+w) output(); /*調用出單輸位績成列表函數*/ else printf("

18、;n!error:輸入的數應為1-%d之間的整數!n",m+w); /*輸入出錯信息*/ system("cls");/*清屏函數*/main()int x;while(1)system("cls");printf("-n"); printf(" C程序語言課程設計-運動會管理系統(tǒng)n"); printf(" 設計人:陳炳成n"); printf("-n");printf("n"); -printf(" 1: 運動項目設置n")

19、; printf(" 2: 運動成績錄入n"); printf(" 3: 成績查詢n"); printf(" 4: 成績打印n");printf(" 5: 退出系統(tǒng)n"); printf("-n");printf("n"); printf("n"); printf("請輸入系統(tǒng)功能編號(1-5):"); scanf("%d",&x);if(x<=0 | x>5)system("cls");printf("nnttt你輸入的功能號錯誤,請重新輸入,按Enter鍵繼續(xù)!");getchar();getchar(); continue;switch(x)case 1: xmsz();break;case 2: cjl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論