運動會管理系統(tǒng)課程設(shè)計報告_第1頁
已閱讀1頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

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模塊測試.................................19</p><p>  五 程序調(diào)試及錯誤....................................19</p><p>  六 參考文獻..........................................20</p&g

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

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

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

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

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

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

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

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

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

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

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

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

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

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

25、(1、2、3、4)</p><p>  選擇顯示的信息 int l(1、2、3、4)</p><p>  選擇現(xiàn)實的排名 int a(1、2、3)</p><p><b>  3.2.3輸出項</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>  參賽項目 bool xiangmu[4]</p><p>  成績 float che

27、ngji</p><p>  單項得分 int defen[4]</p><p>  總分 int zongfen</p><p><b>  四、系統(tǒng)實現(xiàn)與測試</b></p><p>  4.1主菜單模塊實現(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、使用校運動會計分系統(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.成績錄入 ※"<<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<<"請輸入你想操作的代號(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<<"您的輸入有誤,請重

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主菜單測試</p>

46、<p>  主菜單運行結(jié)果如圖4.2</p><p><b>  圖4.2主菜單界面</b></p><p><b>  4.2查詢模塊實現(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 按項目查詢:"<<

50、endl</p><p>  <<" 3 按學(xué)校查詢:"<<endl</p><p>  <<" 4 退出"<<endl</p><p><b>  <<"請選擇:";</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<<"請輸入要查詢的名字:";</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<<" 號碼"<<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<<"沒找到該名字的學(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、<"請輸入要查詢的項目名:";</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<<" 號碼"<<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<<"未找該項目的學(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、稱"<<" 學(xué)校代號"<<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<<"請輸入要查詢的學(xué)校代號:";</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<<" 號碼"<<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<<"沒找到該學(xué)校的學(xué)生"<<endl;</p><p><b>  }</b></p><p>&l

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

75、gt;  圖4.5項目查詢界面</p><p>  當(dāng)選擇數(shù)字2時界面如圖4.5,輸出參加要查詢項目的運動員姓名,學(xué)校,性別,號碼.</p><p>  圖4.6學(xué)校查詢界面</p><p>  當(dāng)選擇數(shù)字3時界面如圖4.6,輸出代表要查詢學(xué)校參賽的運動員姓名,學(xué)校,性別,號碼.</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>  <<"請選擇:";</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é)校名稱"<<" 學(xué)校代號"<<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)<<"項目1 成績"<<setw(12)<<"項目2 成績"</p><p>  <<s

86、etw(12)<<"項目3 成績"<<setw(12)<<"項目4 成績"<<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)<<"項目1得分 排名"<<setw(18)<<"項目2得分 排名"&

91、lt;/p><p>  <<setw(18)<<"項目3得分 排名"<<setw(18)<<"項目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顯示模塊測試</p><p>  顯示模塊測試分為學(xué)校顯示如圖4.8,所有學(xué)生顯示如圖4.9和得分顯示如圖4.10</p><p>  圖4.8學(xué)校信息顯示界面</p><p>  圖4.8選擇1時參賽學(xué)校的名稱,代號,得分和排名的顯示.&

98、lt;/p><p>  圖4.9學(xué)生信息顯示界面</p><p>  圖4.9為選擇2時所有參賽學(xué)生學(xué)校,性別,參賽項目,成績,得分和排名的信息顯示.</p><p>  圖4.10得分規(guī)則顯示界面</p><p>  圖4.10為選擇號碼3時比賽采用的積分規(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<<"打開失敗!";</p><p>  s1<<" 學(xué)校名字 學(xué)校代碼 學(xué)校名次 學(xué)??偡?quot;<<'\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é)校代碼 性別 號碼 項目1 成績 名次 項目2 成績 名次 項目3 成績 名次 項目4 成績 名次 總分"<<'\

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輸出模塊測試</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<<"請選擇:"<<endl</p><p>  <<" 1 學(xué)校排名"<<endl</p>

111、;<p>  <<" 2 運動員總分排名"<<endl</p><p>  <<" 3 退出"<<endl</p><p><b>  <<"請選擇:";</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顯示排名模塊測試</p><p>  顯示排名測試分為學(xué)校排名如圖4.13,運動員排名如圖4.13</p><p>  圖4.13學(xué)校排名界面</p>

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

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

124、t;p>  [2]鄭莉.C++程序設(shè)計(第三版).清華大學(xué)出版社. 2005</p><p>  [3]錢能.C++程序設(shè)計教程.清華大學(xué)出版社. 2004</p><p>  [4]武俊亮.visual c++課程設(shè)計與系統(tǒng)開發(fā)案例.清華出版社</p><p>  [5]黃維通.Visual C++程序設(shè)計教程.清華大學(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é)校代號</p><p>  int mingci;//學(xué)校名次</p><p>  float chengji;//學(xué)校成績</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;//運動員號碼</p><

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

130、>  int zongfen;//總分</p><p><b>  }xs[100];</b></p><p>  int XN;//學(xué)校個數(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※ 歡迎使用校運動會計分系統(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.成績錄入 ※"<<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<<"請輸入你想操作的代號(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、<<"您的輸入有誤,請重新輸入!"<<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<<"請輸入學(xué)校個數(shù):";</p><p><b>  cin>>XN;</b></p><p>  for(int i=0;i

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

150、t;<"請輸入第"<<i+1<<"個學(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é)校名稱"<<" 學(xué)校代號"<<endl;</p><p>  for(i=0;i<XN;i++)</p><p>  cout<<setw(15)<<

溫馨提示

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

評論

0/150

提交評論