運(yùn)動(dòng)會(huì)管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第1頁(yè)
已閱讀1頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  目 錄</b></p><p>  一 課程設(shè)計(jì)目的.....................................1</p><p>  二 課程設(shè)計(jì)任務(wù)和內(nèi)容 ..............................1</p><p>  三 系統(tǒng)設(shè)計(jì)方案 ...................

2、.................2</p><p>  3.1系統(tǒng)詳細(xì)描述..................................2</p><p>  3.1.1系統(tǒng)設(shè)計(jì)背景.............................2 </p><p>  3.1.2系統(tǒng)設(shè)計(jì)詳細(xì)信息.........................2</p&

3、gt;<p>  3.2功能模塊劃分..................................2</p><p>  3.2.1功能模塊描述.............................2</p><p>  3.2.2輸入項(xiàng)...................................4</p><p>  3.2.3輸

4、出項(xiàng)...................................4</p><p>  四 系統(tǒng)實(shí)現(xiàn)與測(cè)試...................................4</p><p>  4.1主菜單實(shí)現(xiàn)....................................5</p><p>  4.1.1流程圖...............

5、....................5</p><p>  4.1.2代碼.....................................6</p><p>  4.1.3主菜單測(cè)試...............................7</p><p>  4.2查詢模塊實(shí)現(xiàn)..................................

6、7</p><p>  4.2.1流程圖...................................7</p><p>  4.2.2代碼.....................................8</p><p>  4.2.3模塊測(cè)試.................................11</p><p

7、>  4.3顯示數(shù)據(jù)模塊實(shí)現(xiàn)..............................12</p><p>  4.3.1流程圖...................................12</p><p>  4.3.2代碼.....................................13</p><p>  4.3.3模塊測(cè)試..

8、...............................15</p><p>  4.4文件輸出模塊..................................16</p><p>  4.4.1代碼.....................................16</p><p>  4.4.2模塊測(cè)試..................

9、...............17</p><p>  4.5顯示排名模塊..................................17</p><p>  4.5.1流程圖...................................17</p><p>  4.5.2代碼.....................................

10、18</p><p>  4.5.3模塊測(cè)試.................................19</p><p>  五 程序調(diào)試及錯(cuò)誤....................................19</p><p>  六 參考文獻(xiàn)..........................................20</p&g

11、t;<p>  七 附錄..............................................20</p><p><b>  一、課程設(shè)計(jì)的目的</b></p><p>  學(xué)習(xí)綜合運(yùn)用C高級(jí)語(yǔ)言課程和其他先修課程的知識(shí),提高分析和解決實(shí)際問(wèn)題的的能力,進(jìn)一步鞏固、加深和拓寬所學(xué)的知識(shí);進(jìn)一步加強(qiáng)結(jié)構(gòu)化程序設(shè)計(jì)的思想,加深對(duì)高級(jí)語(yǔ)

12、言基本語(yǔ)言要素和控制結(jié)構(gòu)的理解。</p><p>  全面系統(tǒng)的學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念、基本語(yǔ)法和編程方法;獨(dú)立完成有一定工作量的程序設(shè)計(jì)任務(wù),同時(shí)強(qiáng)調(diào)好的程序設(shè)計(jì)風(fēng)格。</p><p>  掌握程序設(shè)計(jì)中的常用算法和C語(yǔ)言的編程技巧和上機(jī)調(diào)試程序的方法。</p><p>  在參與一系列子項(xiàng)目的實(shí)踐過(guò)程中,提高如何綜合運(yùn)用所學(xué)知識(shí)解決實(shí)際問(wèn)題的能力,以及獲

13、得相關(guān)項(xiàng)目管理和團(tuán)隊(duì)合作等眾多方面的具體經(jīng)驗(yàn)。</p><p>  二、課程設(shè)計(jì)任務(wù)和內(nèi)容</p><p>  按照如下要求,運(yùn)用C++語(yǔ)言,編寫(xiě)一套可用的較為完善的校際運(yùn)動(dòng)會(huì)管理系統(tǒng)軟件(兩人分模塊合作)</p><p>  要求:初始化輸入:學(xué)校總數(shù)及名字,運(yùn)動(dòng)員總數(shù)及運(yùn)動(dòng)員基本信息,運(yùn)動(dòng)會(huì)項(xiàng)目(為方便測(cè)試暫定為男女分別為4項(xiàng),以項(xiàng)目一,項(xiàng)目二,項(xiàng)目三,項(xiàng)目四代

14、表)</p><p>  各項(xiàng)目名次取法有以下幾種:</p><p>  取前五名:第一名 7分,第二名 5分,第三名 3分,第四名2分,第五名 1分;取前三名:第一名 5分,第二名 3分,第三名 2分;用戶自定義。</p><p><b>  功能要求:</b></p><p>  (1)由程序提醒用戶填寫(xiě)比賽接結(jié)果,

15、輸入各項(xiàng)目參賽運(yùn)動(dòng)員運(yùn)動(dòng)員信息;</p><p> ?。?)信息錄入完畢后由系統(tǒng)為運(yùn)動(dòng)員、各個(gè)學(xué)校進(jìn)行排名;</p><p> ?。?)所有信息記錄完畢后,用戶可以查詢各個(gè)學(xué)校的比賽成成績(jī)和排名,運(yùn)動(dòng)員的比 賽成績(jī)和排名;</p><p> ?。?)最后還能對(duì)比賽信息輸出。</p><p>  注:我與網(wǎng)絡(luò)工程10

16、2001班黃科榮同學(xué)合作,共同完成本次有關(guān)于校際運(yùn)動(dòng)會(huì)管理系統(tǒng)的程序設(shè)計(jì)。我負(fù)責(zé)完成查詢模塊、數(shù)據(jù)顯示模塊、文件輸出模塊的實(shí)現(xiàn)和顯示排名模塊。</p><p><b>  系統(tǒng)設(shè)計(jì)方案</b></p><p><b>  3.1系統(tǒng)詳細(xì)描述</b></p><p>  3.1.1系統(tǒng)設(shè)計(jì)背景</p><

17、p>  隨著中國(guó)教育改革的不斷深入以及大學(xué)生的普及,大學(xué)里每年都會(huì)舉辦運(yùn)動(dòng)會(huì),一方面是為了鼓勵(lì)大學(xué)生積極參加體育運(yùn)動(dòng),另一方面也是培養(yǎng)國(guó)家體育人才。在各個(gè)學(xué)校之間的比賽時(shí),需要對(duì)運(yùn)動(dòng)會(huì)的信息進(jìn)行整理,它涉及到的數(shù)據(jù)量之大,用單純的手寫(xiě)記錄已經(jīng)不能滿足用戶的需求,利用運(yùn)動(dòng)會(huì)管理系統(tǒng)及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于提高管理的效率。 本項(xiàng)目作為《c++課程設(shè)計(jì)》課程的訓(xùn)練項(xiàng)目提出,目的是為了提高同學(xué)們系統(tǒng)的開(kāi)發(fā),則提高大家的實(shí)踐能力

18、。所以開(kāi)發(fā)一個(gè)符合自身運(yùn)動(dòng)會(huì)實(shí)際情況的工作平臺(tái)是十分必要的。</p><p>  3.1.2系統(tǒng)設(shè)計(jì)詳細(xì)信息</p><p>  系統(tǒng)使用對(duì)象定為由太原科技大學(xué),太原理工大學(xué),山西大學(xué),中北大學(xué)聯(lián)合舉辦的校際運(yùn)動(dòng)會(huì)。系統(tǒng)需要建立兩個(gè)結(jié)構(gòu)體學(xué)校和運(yùn)動(dòng)員。學(xué)校應(yīng)該包含學(xué)校名,學(xué)校代碼,學(xué)校總分和學(xué)校排名等信息;運(yùn)動(dòng)員則要包含姓名,性別,學(xué)校,比賽成績(jī),比賽名次和比賽成績(jī)等信息。系統(tǒng)就是要實(shí)現(xiàn)學(xué)

19、校和運(yùn)動(dòng)員基本信息的輸入和輸出,還有查詢,最后再生成報(bào)表。</p><p><b>  3.2功能模塊劃分</b></p><p>  3.2.1功能模塊描述</p><p>  根據(jù)題目的要求及系統(tǒng)功能可以將系統(tǒng)分為學(xué)校信息錄入,學(xué)生信息錄入,成績(jī)錄入,查詢,顯示數(shù)據(jù),輸出文件,顯示排名七個(gè)模塊。各個(gè)模塊基本介紹如下:</p>

20、<p>  學(xué)校信息錄入模塊:輸入學(xué)??倲?shù),對(duì)學(xué)校名字,代碼,成績(jī),排名等信息進(jìn)行初始化。</p><p>  學(xué)生信息錄入模塊:輸入學(xué)生總數(shù),對(duì)運(yùn)動(dòng)員姓名,性別,學(xué)校,成績(jī),排名,得分等信息進(jìn)行計(jì)算。</p><p>  成績(jī)錄入模塊:錄入運(yùn)動(dòng)員比賽成績(jī)由系統(tǒng)對(duì)運(yùn)動(dòng)員進(jìn)行排名和積分。</p><p>  查詢模塊:用戶可以選擇運(yùn)動(dòng)員,學(xué)校,項(xiàng)目三種查詢方

21、式。</p><p>  顯示數(shù)據(jù)模塊:顯示學(xué)校信息,運(yùn)動(dòng)員信息和得分規(guī)則。</p><p>  輸出文件模塊:將文件存儲(chǔ)。</p><p>  顯示排名模塊:顯示學(xué)校排名和運(yùn)動(dòng)員排名。</p><p>  注:我主要負(fù)責(zé)查詢,顯示數(shù)據(jù),輸出文件,顯示排名四個(gè)模塊的相關(guān)內(nèi)容,黃科榮同學(xué)負(fù)責(zé)編寫(xiě)學(xué)校信息錄入,學(xué)生信息錄入,成績(jī)錄入三個(gè)模塊的相關(guān)

22、內(nèi)容,最后的整體代碼由兩個(gè)人組合完成。</p><p>  圖3.1校際運(yùn)動(dòng)會(huì)管理系統(tǒng)功能模塊圖</p><p><b>  3.2.2輸入輸</b></p><p>  以下輸入項(xiàng)均為鍵盤(pán)輸入:</p><p>  得分規(guī)則選擇 int a(1、2、3)</p><p>  選擇主菜單選項(xiàng)

23、 int n(1、2、3、4、5、6、7、8)</p><p>  學(xué)校個(gè)數(shù) int XN</p><p>  學(xué)校校名 string mingzi </p><p>  學(xué)校代號(hào) string daihao </p><p>  學(xué)生數(shù)量 int SN</p><

24、p>  學(xué)生姓名 string xingming </p><p>  學(xué)生性別 bool xingbie</p><p>  參賽項(xiàng)目 bool xiangmu[4]</p><p>  成績(jī) float chengji</p><p>  選擇查詢方式 int a

25、(1、2、3、4)</p><p>  選擇顯示的信息 int l(1、2、3、4)</p><p>  選擇現(xiàn)實(shí)的排名 int a(1、2、3)</p><p><b>  3.2.3輸出項(xiàng)</b></p><p>  學(xué)校名次 int mingci[4];</p><p> 

26、 學(xué)校校名 string mingzi</p><p>  學(xué)生姓名 string xingming </p><p>  學(xué)生性別 bool xingbie</p><p>  參賽項(xiàng)目 bool xiangmu[4]</p><p>  成績(jī) float che

27、ngji</p><p>  單項(xiàng)得分 int defen[4]</p><p>  總分 int zongfen</p><p><b>  四、系統(tǒng)實(shí)現(xiàn)與測(cè)試</b></p><p>  4.1主菜單模塊實(shí)現(xiàn)</p><p>  4.1.1主菜單流程圖<

28、;/p><p><b>  N</b></p><p><b>  NNN</b></p><p><b>  Y</b></p><p>  YY Y N</p><p><b>  N</b><

29、;/p><p><b>  N</b></p><p><b>  Y</b></p><p>  Y Y</p><p><b>  N</b></p><p><b>  4.1主菜單流程圖</b></

30、p><p>  4.1.2主菜單代碼 </p><p>  void menu()//菜單</p><p><b>  { </b></p><p><b>  int w1,n;</b></p><p>  system("cls");</p

31、><p>  cout<<"\t\t--------------------------------------------"<<endl</p><p>  <<"\t\t*************welcome to load****************"<<endl</p><

32、p>  <<"\t\t--------------------------------------------"<<endl</p><p>  <<"\t\t※※※※※※※※※※※※※※※※※※※※※※"<<endl</p><p>  <<"\t\t※ 歡迎

33、使用校運(yùn)動(dòng)會(huì)計(jì)分系統(tǒng) ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※

34、※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ 1.學(xué)校信息錄入 ※"<<endl</

35、p><p>  <<"\t\t※ 2.學(xué)生信息錄入 ※"<<endl</p><p>  <<"\t\t※ 3.成績(jī)錄入 ※"<<endl</p><p>  <<&q

36、uot;\t\t※ 4.查詢 ※"<<endl</p><p>  <<"\t\t※ 5.顯示數(shù)據(jù) ※"<<endl</p><p>  <<"\t\t※ 6.

37、輸出文件 ※"<<endl</p><p>  <<"\t\t※ 7.顯示排名 ※"<<endl</p><p>  <<"\t\t※ 8.退出 ※&q

38、uot;<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ ※"<<endl&l

39、t;/p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ 制作人 ※"<<endl</p><p>  

40、<<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t

41、※※※※※※※※※※※※※※※※※※※※※※"<<endl;</p><p><b>  do</b></p><p><b>  {</b></p><p>  cout<<"請(qǐng)輸入你想操作的代號(hào)(1-8):"<<endl;</p><

42、p><b>  cin>>n;</b></p><p>  if(n<1||n>8)</p><p><b>  {</b></p><p><b>  w1=1;</b></p><p>  cout<<"您的輸入有誤,請(qǐng)重

43、新輸入!"<<endl;</p><p><b>  }</b></p><p>  else w1=0;</p><p>  }while(w1==1);</p><p><b>  switch(n)</b></p><p><b>  {

44、</b></p><p>  case 1:xuexiaoluru();</p><p>  case 2:xueshengluru();</p><p>  case 3:chengjiluru();</p><p>  case 4:chaxun();</p><p>  case 5:xianshi(

45、);</p><p>  case 6:wenjian();</p><p>  case 7:paimingxianshi();</p><p><b>  }</b></p><p><b>  }</b></p><p>  4.1.3主菜單測(cè)試</p>

46、<p>  主菜單運(yùn)行結(jié)果如圖4.2</p><p><b>  圖4.2主菜單界面</b></p><p><b>  4.2查詢模塊實(shí)現(xiàn)</b></p><p>  4.2.1查詢流程圖</p><p><b>  N</b></p><p&g

47、t;<b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖4.3查詢模塊流程圖</p><p>  4.2.2查詢模塊代碼</p><p>  void chaxun()

48、 //查詢</p><p>  {void xscx();</p><p>  void xmcx();</p><p>  void xxcx();</p><p><b>  int a;</b></p><p><b>  do</b></p><

49、;p><b>  {</b></p><p>  cout<<"選擇查詢方式:"<<endl</p><p>  <<" 1 按姓名查詢:"<<endl</p><p>  <<" 2 按項(xiàng)目查詢:"<<

50、endl</p><p>  <<" 3 按學(xué)校查詢:"<<endl</p><p>  <<" 4 退出"<<endl</p><p><b>  <<"請(qǐng)選擇:";</b></p><p>&l

51、t;b>  cin>>a;</b></p><p><b>  switch(a)</b></p><p><b>  {</b></p><p>  case 1:xscx();break;</p><p>  case 2:xmcx();break;</p&g

52、t;<p>  case 3:xxcx();break;</p><p>  case 4:break;</p><p><b>  }</b></p><p>  }while(a<1&&a>4);</p><p>  system("pause");<

53、;/p><p><b>  menu();</b></p><p><b>  }</b></p><p>  void xscx()</p><p>  {int i,sb=0;</p><p><b>  string x;</b></p>

54、<p>  cout<<"請(qǐng)輸入要查詢的名字:";</p><p><b>  cin>>x;</b></p><p>  for(i=0;i<SN;i++)</p><p><b>  {</b></p><p>  if(xs[i].

55、xingming==x)</p><p><b>  {</b></p><p><b>  sb++;</b></p><p>  cout<<"姓名"<<xs[i].xingming<<" 學(xué)校";</p><p>

56、;  for(int k=0;;k++)</p><p>  if(xs[i].xue==xx[k].daihao)</p><p><b>  {</b></p><p>  cout<<setw(15)<<xx[k].mingzi;</p><p><b>  break;</

57、b></p><p><b>  }</b></p><p>  cout<<" 性別";</p><p>  if(xs[i].xingbie)</p><p>  cout<<setw(4)<<"男";</p><

58、p><b>  else</b></p><p>  cout<<setw(4)<<"女";</p><p>  cout<<" 號(hào)碼"<<xs[i].haoma<<endl;</p><p><b>  }</b>

59、</p><p><b>  }</b></p><p><b>  if(sb==0)</b></p><p><b>  {</b></p><p>  cout<<"沒(méi)找到該名字的學(xué)生"<<endl;</p>&l

60、t;p><b>  }</b></p><p><b>  }</b></p><p>  void xmcx()</p><p>  {int i,sb=0;</p><p><b>  int j;</b></p><p>  cout<

61、<"請(qǐng)輸入要查詢的項(xiàng)目名:";</p><p><b>  cin>>j;</b></p><p>  for(i=0;i<SN;i++)</p><p><b>  {</b></p><p>  if(xs[i].xiangmu[j-1])</p

62、><p><b>  {</b></p><p><b>  sb++;</b></p><p>  cout<<"姓名"<<xs[i].xingming<<" 學(xué)校";</p><p>  for(int k=0;;k+

63、+)</p><p>  if(xs[i].xue==xx[k].daihao)</p><p><b>  {</b></p><p>  cout<<setw(15)<<xx[k].mingzi;</p><p><b>  break;</b></p>&

64、lt;p><b>  }</b></p><p>  cout<<" 性別";</p><p>  if(xs[i].xingbie)</p><p>  cout<<setw(4)<<"男";</p><p><b>  el

65、se</b></p><p>  cout<<setw(4)<<"女";</p><p>  cout<<" 號(hào)碼"<<xs[i].haoma<<endl;</p><p><b>  }</b></p><p&

66、gt;<b>  }</b></p><p><b>  if(sb==0)</b></p><p><b>  {</b></p><p>  cout<<"未找該項(xiàng)目的學(xué)生"<<endl;</p><p><b>  }

67、</b></p><p><b>  }</b></p><p>  void xxcx()</p><p>  {int i,sb=0;</p><p>  cout<<"學(xué)校信息為:"<<endl<<setw(15)<<"學(xué)校名

68、稱(chēng)"<<" 學(xué)校代號(hào)"<<endl;</p><p>  for(i=0;i<XN;i++)</p><p>  cout<<setw(15)<<xx[i].mingzi<<" "<<xx[i].daihao<<endl;</p>

69、<p><b>  string l;</b></p><p>  cout<<"請(qǐng)輸入要查詢的學(xué)校代號(hào):";</p><p><b>  cin>>l;</b></p><p>  for(i=0;i<SN;i++)</p><p>&

70、lt;b>  {</b></p><p>  if(xs[i].xue==l)</p><p><b>  {</b></p><p><b>  sb++;</b></p><p>  cout<<"姓名"<<xs[i].xingmin

71、g<<" 學(xué)校"<<l<<" 性別";</p><p>  if(xs[i].xingbie)</p><p>  cout<<setw(6)<<"男";</p><p><b>  else</b></p>

72、<p>  cout<<setw(6)<<"女";</p><p>  cout<<" 號(hào)碼"<<xs[i].haoma;</p><p><b>  }</b></p><p><b>  }</b></p>

73、;<p><b>  if(sb==0)</b></p><p><b>  {</b></p><p>  cout<<"沒(méi)找到該學(xué)校的學(xué)生"<<endl;</p><p><b>  }</b></p><p>&l

74、t;b>  }</b></p><p>  4.2.3查詢模塊測(cè)試</p><p>  查詢模塊測(cè)試分為姓名查詢?nèi)鐖D4.4,項(xiàng)目查詢?nèi)鐖D4.5,學(xué)校查詢?nèi)鐖D4.6:</p><p>  圖4.4姓名查詢界面</p><p>  當(dāng)選擇數(shù)字1時(shí)界面如圖4.4,輸出學(xué)生姓名,學(xué)校,性別,號(hào)碼.</p><p&

75、gt;  圖4.5項(xiàng)目查詢界面</p><p>  當(dāng)選擇數(shù)字2時(shí)界面如圖4.5,輸出參加要查詢項(xiàng)目的運(yùn)動(dòng)員姓名,學(xué)校,性別,號(hào)碼.</p><p>  圖4.6學(xué)校查詢界面</p><p>  當(dāng)選擇數(shù)字3時(shí)界面如圖4.6,輸出代表要查詢學(xué)校參賽的運(yùn)動(dòng)員姓名,學(xué)校,性別,號(hào)碼.</p><p><b>  4.3顯示模塊查詢&l

76、t;/b></p><p>  4.3.1顯示模塊流程圖</p><p><b>  Y</b></p><p>  圖4.7顯示模塊流程圖</p><p>  4.3.2顯示模塊代碼</p><p>  void xianshi()//顯示所有信息</p><p&

77、gt;  { void xsxxxx();</p><p>  void xsxsxx();</p><p>  void xsdfgz();</p><p><b>  int l;</b></p><p><b>  do </b></p><p><b>  

78、{</b></p><p>  cout<<"顯示所有學(xué)校信息輸入1"<<endl</p><p>  <<"顯示所有學(xué)生信息輸入2"<<endl</p><p>  <<"顯示得分規(guī)則輸入3"<<

79、endl</p><p>  <<"退出輸入4"<<endl</p><p><b>  <<"請(qǐng)選擇:";</b></p><p><b>  cin>>l;</b></p><p>  switc

80、h(l){</p><p>  case 1:xsxxxx();break;</p><p>  case 2:xsxsxx();break;</p><p>  case 3:xsdfgz();break;</p><p><b>  }</b></p><p>  }while(l>4&

81、amp;&l<1); </p><p>  system("pause");</p><p><b>  menu();</b></p><p><b>  }</b></p><p>  void xsxxxx()</p><p><

82、b>  {</b></p><p>  cout<<"學(xué)校信息為:"<<endl<<setw(15)<<"學(xué)校名稱(chēng)"<<" 學(xué)校代號(hào)"<<setw(8)<<"學(xué)校得分"<<setw(8)<<"學(xué)校排

83、名"<<endl;</p><p>  for(int i=0;i<XN;i++)</p><p>  cout<<setw(15)<<xx[i].mingzi<<" "<<xx[i].daihao<<setw(8)<<xx[i].chengji<<se

84、tw(8)<<xx[i].mingci<<endl;</p><p><b>  }</b></p><p>  void xsxsxx()</p><p><b>  {</b></p><p>  cout<<setw(6)<<"姓名&q

85、uot;<<setw(15)<<"學(xué)校"<<setw(6)<<"性別"</p><p>  <<setw(12)<<"項(xiàng)目1 成績(jī)"<<setw(12)<<"項(xiàng)目2 成績(jī)"</p><p>  <<s

86、etw(12)<<"項(xiàng)目3 成績(jī)"<<setw(12)<<"項(xiàng)目4 成績(jī)"<<endl;</p><p>  for(int j=0;j<SN;j++)</p><p><b>  {</b></p><p>  cout<<setw(

87、6)<<xs[j].xingming;</p><p>  for(int k=0;;k++)</p><p>  if(xs[j].xue==xx[k].daihao)</p><p><b>  {</b></p><p>  cout<<setw(15)<<xx[k].mingz

88、i;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(xs[j].xingbie)</p><p>  cout<<setw(6)<<"男";</p><p>&l

89、t;b>  else</b></p><p>  cout<<setw(6)<<"女";</p><p>  for(int x=0;x<4;x++)</p><p>  cout<<setw(6)<<xs[j].xiangmu[x]<<setw(6)<&l

90、t;xs[j].chengji[x];</p><p>  cout<<endl;</p><p><b>  }</b></p><p>  cout<<setw(18)<<"項(xiàng)目1得分 排名"<<setw(18)<<"項(xiàng)目2得分 排名"&

91、lt;/p><p>  <<setw(18)<<"項(xiàng)目3得分 排名"<<setw(18)<<"項(xiàng)目4得分 排名"<<setw(7)<<"總分"<<endl;</p><p>  for(j=0;j<SN;j++)</p><

92、;p><b>  {</b></p><p>  for(int x=0;x<4;x++)</p><p>  cout<<setw(9)<<xs[j].defen[x]<<setw(9)<<xs[j].mingci[x]<<setw(7);</p><p>  cout&

93、lt;<xs[j].zongfen<<endl;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void xsdfgz()</p><p><b>  {</b></p><p> 

94、 for(int z=0;;z++)</p><p><b>  {</b></p><p>  if(df[z]!=0)</p><p><b>  {</b></p><p>  cout<<"第"<<z+1<<"名得"

95、<<df[z]<<"分"<<endl;</p><p><b>  continue;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {

96、</b></p><p>  cout<<"其后所有人得分為0"<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p&

97、gt;<p><b>  }</b></p><p>  4.3.3顯示模塊測(cè)試</p><p>  顯示模塊測(cè)試分為學(xué)校顯示如圖4.8,所有學(xué)生顯示如圖4.9和得分顯示如圖4.10</p><p>  圖4.8學(xué)校信息顯示界面</p><p>  圖4.8選擇1時(shí)參賽學(xué)校的名稱(chēng),代號(hào),得分和排名的顯示.&

98、lt;/p><p>  圖4.9學(xué)生信息顯示界面</p><p>  圖4.9為選擇2時(shí)所有參賽學(xué)生學(xué)校,性別,參賽項(xiàng)目,成績(jī),得分和排名的信息顯示.</p><p>  圖4.10得分規(guī)則顯示界面</p><p>  圖4.10為選擇號(hào)碼3時(shí)比賽采用的積分規(guī)則的顯示.</p><p><b>  4.4輸出文件

99、模塊</b></p><p>  4.4.1輸出模塊代碼</p><p>  void wenjian() //輸出到文件</p><p><b>  {</b></p><p>  fstream s1("輸出文件.txt",ios::out);</p><p&g

100、t;<b>  if(!s1)</b></p><p>  cout<<"打開(kāi)失敗!";</p><p>  s1<<" 學(xué)校名字 學(xué)校代碼 學(xué)校名次 學(xué)校總分"<<'\n';</p><p>  for (int i=0;i<XN;i+

101、+)</p><p><b>  {</b></p><p>  s1<<xx[i].mingzi<<" "<<xx[i].daihao<<" "<<xx[i].mingci<<" "<<int(xx[i].chengji)&

102、lt;<'\n';</p><p><b>  }</b></p><p>  s1<<'\n'<<'\n'<<" 姓名 學(xué)校代碼 性別 號(hào)碼 項(xiàng)目1 成績(jī) 名次 項(xiàng)目2 成績(jī) 名次 項(xiàng)目3 成績(jī) 名次 項(xiàng)目4 成績(jī) 名次 總分"<<'\

103、n';</p><p>  for(i=0;i<SN;i++)</p><p><b>  {</b></p><p>  s1<<xs[i].xingming<<" "<<xs[i].xue<<" "<<xs[i].xingbie

104、<<" "<<xs[i].haoma<<" "</p><p>  <<xs[i].xiangmu[0]<<" "<<xs[i].chengji[0]<<" "<<xs[i].mingci[0]<<" "&l

105、t;/p><p>  <<xs[i].xiangmu[1]<<" "<<xs[i].chengji[1]<<" "<<xs[i].mingci[1]<<" "</p><p>  <<xs[i].xiangmu[2]<<" &qu

106、ot;<<xs[i].chengji[2]<<" "<<xs[i].mingci[2]<<" "</p><p>  <<xs[i].xiangmu[3]<<" "<<xs[i].chengji[3]<<" "<<xs[i].m

107、ingci[3]<<" "</p><p>  <<xs[i].zongfen<<'\n';</p><p><b>  }</b></p><p>  s1.close();</p><p>  cout<<"輸出成功!&qu

108、ot;<<endl;</p><p>  system("pause");</p><p><b>  menu();</b></p><p><b>  }</b></p><p>  4.4.2輸出模塊測(cè)試</p><p><b>

109、;  圖4.11輸出文件</b></p><p><b>  4.5顯示排名</b></p><p>  4.5.1排名模塊流程圖</p><p>  圖4.12排名模塊流程圖</p><p>  4.5.2顯示排名模塊代碼</p><p>  void paimingxianshi(

110、) //顯示排名</p><p>  {void xxpm();</p><p>  void ydypm();</p><p>  cout<<"請(qǐng)選擇:"<<endl</p><p>  <<" 1 學(xué)校排名"<<endl</p>

111、;<p>  <<" 2 運(yùn)動(dòng)員總分排名"<<endl</p><p>  <<" 3 退出"<<endl</p><p><b>  <<"請(qǐng)選擇:";</b></p><p><b>  i

112、nt a;</b></p><p><b>  cin>>a;</b></p><p><b>  switch(a)</b></p><p><b>  {</b></p><p>  case 1:xxpm();break;</p>&

113、lt;p>  case 2:ydypm();break;</p><p>  case 3:break;}</p><p>  system("pause");</p><p><b>  menu();}</b></p><p>  void xxpm()</p><p&g

114、t;<b>  {</b></p><p>  string dd[50];</p><p>  for(int i=0;i<XN;i++)</p><p>  dd[xx[i].mingci-1]=xx[i].mingzi;</p><p>  for(i=0;i<XN;i++)</p>&l

115、t;p>  cout<<"第"<<i+1<<"名為"<<setw(6)<<dd[i]<<endl;</p><p><b>  }</b></p><p>  void ydypm()</p><p><b>  {

116、</b></p><p>  string dd[200],te;</p><p>  int ss[200],mp,p,q;</p><p>  for(int i=0;i<SN;i++)</p><p><b>  {</b></p><p>  dd[i]=xs[i].xi

117、ngming;</p><p>  ss[i]=xs[i].zongfen;</p><p><b>  }</b></p><p>  for(p=0;p<SN;p++)</p><p><b>  {</b></p><p>  for(q=p+1;q<SN-

118、1;q++)</p><p><b>  {</b></p><p>  if(ss[p]<ss[q])</p><p><b>  {</b></p><p><b>  te=dd[q];</b></p><p>  dd[q]=dd[p];&

119、lt;/p><p><b>  dd[p]=te;</b></p><p><b>  mp=ss[q];</b></p><p>  ss[q]=ss[p];</p><p><b>  ss[p]=mp;</b></p><p><b>  }

120、</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  for(i=0;i<SN;i++)</p><p>  cout<<"第"<<i+1<<"名為"

121、;<<setw(6)<<dd[i]<<endl;</p><p><b>  }</b></p><p>  4.5.3顯示排名模塊測(cè)試</p><p>  顯示排名測(cè)試分為學(xué)校排名如圖4.13,運(yùn)動(dòng)員排名如圖4.13</p><p>  圖4.13學(xué)校排名界面</p>

122、<p>  圖4.14運(yùn)動(dòng)員排名界面</p><p>  五、調(diào)試錯(cuò)誤及解決方法 </p><p>  在調(diào)試過(guò)程中遇到了各種各樣的錯(cuò)誤,但總結(jié)起來(lái)也就是馬虎造成的,現(xiàn)列舉一二。如在調(diào)用函數(shù)時(shí)出現(xiàn)函數(shù)未聲明的錯(cuò)誤,只要在函數(shù)的開(kāi)頭進(jìn)行聲明就行了;還有如“D:\測(cè)試.cpp(579) : error C2018: unknown character '0xa3'

123、;”,此類(lèi)型錯(cuò)誤主要是在輸入字符時(shí)使用的是中文輸入,只要改成英文輸入就行了;注意“{}”使用要完整等等。不過(guò)在我編寫(xiě)程序時(shí)遇到的最大的困難還是在輸入文件模塊,因?yàn)閷?duì)這個(gè)知識(shí)點(diǎn)掌握不好,后來(lái)經(jīng)過(guò)查閱資料終于弄清楚了。</p><p><b>  六、參考文獻(xiàn)</b></p><p>  [1]譚浩強(qiáng).C++程序設(shè)計(jì).清華大學(xué)出版社. 2011</p>&l

124、t;p>  [2]鄭莉.C++程序設(shè)計(jì)(第三版).清華大學(xué)出版社. 2005</p><p>  [3]錢(qián)能.C++程序設(shè)計(jì)教程.清華大學(xué)出版社. 2004</p><p>  [4]武俊亮.visual c++課程設(shè)計(jì)與系統(tǒng)開(kāi)發(fā)案例.清華出版社</p><p>  [5]黃維通.Visual C++程序設(shè)計(jì)教程.清華大學(xué)出版社. 2005 </p>

125、;<p><b>  七、附錄</b></p><p><b>  源代碼</b></p><p>  #include<iostream></p><p>  #include<fstream></p><p>  #include<iomanip>

126、;</p><p>  #include<string></p><p>  using namespace std;</p><p>  int df[100]={0};</p><p>  struct xuexiao</p><p><b>  {</b></p>

127、<p>  string mingzi;//學(xué)校名字</p><p>  string daihao;//學(xué)校代號(hào)</p><p>  int mingci;//學(xué)校名次</p><p>  float chengji;//學(xué)校成績(jī)</p><p><b>  }xx[20];</b><

128、/p><p>  struct xuesheng</p><p><b>  {</b></p><p>  string xue;//學(xué)校</p><p>  string xingming;//姓名</p><p>  int haoma;//運(yùn)動(dòng)員號(hào)碼</p><

129、;p>  bool xiangmu[4];//項(xiàng)目</p><p>  bool xingbie;//性別</p><p>  float chengji[4];//成績(jī)</p><p>  int mingci[4];//名次</p><p>  int defen[4];//單項(xiàng)得分</p><p

130、>  int zongfen;//總分</p><p><b>  }xs[100];</b></p><p>  int XN;//學(xué)校個(gè)數(shù)</p><p>  int SN;//學(xué)生總數(shù)</p><p>  void xuexiaoluru();</p><p>

131、  void xueshengluru();</p><p>  void chengjiluru();</p><p>  void chaxun();</p><p>  void xianshi();</p><p>  void wenjian();</p><p>  void paimingxianshi(

132、);</p><p>  void paiming(int a,bool b);</p><p>  void menu()//菜單</p><p><b>  { </b></p><p><b>  int w1,n;</b></p><p>  system(

133、"cls");</p><p>  cout<<"\t\t--------------------------------------------"<<endl</p><p>  <<"\t\t*************welcome to load****************"<&

134、lt;endl</p><p>  <<"\t\t--------------------------------------------"<<endl</p><p>  <<"\t\t※※※※※※※※※※※※※※※※※※※※※※"<<endl</p><p>  <&l

135、t;"\t\t※ 歡迎使用校運(yùn)動(dòng)會(huì)計(jì)分系統(tǒng) ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※

136、 ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ 1.學(xué)校信息錄入 ※

137、"<<endl</p><p>  <<"\t\t※ 2.學(xué)生信息錄入 ※"<<endl</p><p>  <<"\t\t※ 3.成績(jī)錄入 ※"<<endl</p>

138、<p>  <<"\t\t※ 4.查詢 ※"<<endl</p><p>  <<"\t\t※ 5.顯示數(shù)據(jù) ※"<<endl</p><p>  <<&qu

139、ot;\t\t※ 6.輸出文件 ※"<<endl</p><p>  <<"\t\t※ 7.顯示排名 ※"<<endl</p><p>  <<"\t\t※ 8.退出

140、 ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※

141、 ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ 制作人 ※"<<endl

142、</p><p>  <<"\t\t※ ※"<<endl</p><p>  <<"\t\t※ ※"<<endl</p><p&

143、gt;  <<"\t\t※※※※※※※※※※※※※※※※※※※※※※"<<endl;</p><p><b>  do</b></p><p><b>  {</b></p><p>  cout<<"請(qǐng)輸入你想操作的代號(hào)(1-8):"<&l

144、t;endl;</p><p><b>  cin>>n;</b></p><p>  if(n<1||n>8)</p><p><b>  {</b></p><p><b>  w1=1;</b></p><p>  cout

145、<<"您的輸入有誤,請(qǐng)重新輸入!"<<endl;</p><p><b>  }</b></p><p>  else w1=0;</p><p>  }while(w1==1);</p><p><b>  switch(n)</b></p>

146、<p><b>  {</b></p><p>  case 1:xuexiaoluru();</p><p>  case 2:xueshengluru();</p><p>  case 3:chengjiluru();</p><p>  case 4:chaxun();</p><

147、;p>  case 5:xianshi();</p><p>  case 6:wenjian();</p><p>  case 7:paimingxianshi();</p><p><b>  }</b></p><p><b>  }</b></p><p> 

148、 void xuexiaoluru()//學(xué)校信息錄入</p><p><b>  {</b></p><p>  cout<<"請(qǐng)輸入學(xué)校個(gè)數(shù):";</p><p><b>  cin>>XN;</b></p><p>  for(int i=0;i

149、<XN;i++)</p><p><b>  {</b></p><p>  cout<<"請(qǐng)輸入第"<<i+1<<"個(gè)學(xué)校的名字:";</p><p>  cin>>xx[i].mingzi;</p><p>  cout&l

150、t;<"請(qǐng)輸入第"<<i+1<<"個(gè)學(xué)校的代碼:";</p><p>  cin>>xx[i].daihao;</p><p>  xx[i].chengji=xx[i].mingci=0;</p><p><b>  }</b></p><p

151、>  cout<<"學(xué)校信息為:"<<endl<<setw(15)<<"學(xué)校名稱(chēng)"<<" 學(xué)校代號(hào)"<<endl;</p><p>  for(i=0;i<XN;i++)</p><p>  cout<<setw(15)<<

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論