最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++課程設(shè)計之運動會管理系統(tǒng)

 更新時間:2018年10月18日 09:49:30   作者:自動化1123班潘國成  
這篇文章主要為大家詳細介紹了C++課程設(shè)計之運動會管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C++運動會管理系統(tǒng)的實現(xiàn)代碼,供大家參考,具體內(nèi)容如下

#include<iostream.h> 
#define MAX 10 
#include<iomanip.h> 
#include "fstream.h" 
int n,m,w; 
class gamescore 
{public: 
int academynum;     //院系編號 
int score[MAX][MAX];   //記錄成績的2維數(shù)組 
int totalscore[MAX];   //院總分存儲數(shù)組 
int mentotalscore[MAX]; //男團總分存儲數(shù)組 
int womentotalscore[MAX];//女團總分存儲數(shù)組 
int projectnum;     //項目編號 
  gamescore() 
  { 
    academynum=0; 
    projectnum=0;  
  } 
  void search(int academynum,int projectnum); 
  void remove(int academynum,int projectnum); 
  void repair(int academynum,int projectnum); 
  void save();     //保存成績 
  void input(); 
  void sort1();     //按院總分排序 
  void sort2();     //按男團總分排序 
  void sort3();     //按女團總分排序 
  void hold();     //存儲總分數(shù) 
  int academytotalscore(int academynum);    //院總分 
  int academywomentotalscore(int academynum); //院女團總分 
  int academymentotalscore(int academynum);  //院男團總分 
  void output1(int academy);          //輸出院系的成績列表   
  void output2(int academynum);        //輸出院系的團體成績列表 
}; 
void gamescore::input() 
{  int i,j; 
  for(i=0;i<n;i++) 
    {   cout<<"輸入編號為"<<i+1<<"院系的成績(若參賽人數(shù)超過6人,取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1,否則參賽院系不超過6個,每項目取前三名,分別為5,3,2分,其余記成績?yōu)?)"<<endl; 
       for(j=0;j<m+w;j++) 
       { 
         cout<<"輸入編號為"<<i+1<<"院系的的運動項目編號為"<<j+1<<"的成績:"; 
         cin>>score[i][j]; 
         if(score[i][j]!=0&&score[i][j]!=2&&score[i][j]!=5&&score[i][j]!=10) 
         { 
           cout<<"成績輸入錯誤,請檢查后再輸入"<<endl; 
           cin>>score[i][j]; 
         } 
       } 
     } 
  if(i=n-1) cout<<"!!輸入完畢"<<endl; 
} 
void gamescore::save() 
{  ofstream ofs("運動會成績.txt"); 
  ofs<<"將最終學院參加的對應(yīng)項目成績列表列出(行表示學院編號,列表示項目編號)"<<endl; 
 
  for(int i=0;i<n;i++) 
    {    
       for(int j=0;j<m+w;j++) 
       { 
         ofs<<score[i][j]<<setw(5);    
       } 
       ofs<<endl; 
     } 
   for(i=1;i<=n;i++) 
   { 
     ofs<<"編號為"<<i<<"的學院總分的成績?yōu)?"<<academytotalscore(i)<<endl; 
     ofs<<"編號為"<<i<<"的學院男團的成績?yōu)?"<<academymentotalscore(i)<<endl; 
     ofs<<"編號為"<<i<<"的學院女團的成績?yōu)?"<<academywomentotalscore(i)<<endl; 
   } 
   
ofs.close(); 
} 
int gamescore::academytotalscore(int academynum)//院總分 
{  
  int sum=score[academynum-1][0]; 
  for(int i=1;i<m+w;i++) 
  { 
       
      sum=sum+score[academynum-1][i]; 
  } 
    return sum; 
} 
int gamescore::academywomentotalscore(int academynum)//院女團總分 
{  
  int sum=score[academynum-1][m]; 
  for(int i=m+1;i<m+w;i++) 
  {  
      sum=sum+score[academynum-1][i]; 
  } 
    return sum; 
} 
int gamescore::academymentotalscore(int academynum)//院男團總分 
{  
  int sum=score[academynum-1][0]; 
  for(int i=1;i<m;i++) 
  { 
       
      sum=sum+score[academynum-1][i]; 
  } 
     return sum; 
} 
 
void gamescore::hold()//存儲總分 
{ 
  for(int i=1;i<=n;i++) 
  { 
  totalscore[i-1]=academytotalscore(i); 
  mentotalscore[i-1]=academymentotalscore(i); 
  womentotalscore[i-1]=academywomentotalscore(i); 
  } 
} 
void gamescore::sort1()//按院系總分排序 
{ 
  int p,q; 
  int a[MAX]; 
  for(int i=0;i<n;i++) 
  { 
    a[i]=i+1; 
  } 
  for(int j=0;j<n-1;j++) 
  { 
    for(i=0;i<=n-1-j;i++) 
    { 
      if(totalscore[i]<totalscore[i+1]) 
      { 
        p=totalscore[i]; 
        totalscore[i]=totalscore[i+1]; 
        totalscore[i+1]=p; 
        q=a[i]; 
        a[i]=a[i+1]; 
        a[i+1]=q; 
      } 
    } 
  } 
  cout<<"按院系總分從大到小排序,以及對應(yīng)的院系編號為:"<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<a[j]<<setw(5); 
  } 
  cout<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<totalscore[j]<<setw(5); 
  } 
  cout<<endl; 
} 
void gamescore::sort2()//按男團總分排序 
{ 
  int p,q; 
  int a[MAX]; 
  for(int i=0;i<n;i++) 
  { 
    a[i]=i+1; 
  } 
  for(int j=0;j<n-1;j++) 
  { 
    for(i=0;i<=n-1-j;i++) 
    { 
      if(mentotalscore[i]<mentotalscore[i+1]) 
      { 
        p=mentotalscore[i]; 
        mentotalscore[i]=mentotalscore[i+1]; 
        mentotalscore[i+1]=p; 
        q=a[i]; 
        a[i]=a[i+1]; 
        a[i+1]=q; 
      } 
    } 
  } 
  cout<<"按男團總分從大到小排序,以及對應(yīng)的院系編號為:"<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<a[j]<<setw(5); 
  } 
  cout<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<mentotalscore[j]<<setw(5); 
  } 
  cout<<endl; 
} 
void gamescore::sort3()//按女團總分排序 
{ 
  int p,q; 
  int a[MAX]; 
  for(int i=0;i<n;i++) 
  { 
    a[i]=i+1; 
  } 
  for(int j=0;j<n-1;j++) 
  { 
    for(i=0;i<=n-1-j;i++) 
    { 
      if(womentotalscore[i]<womentotalscore[i+1]) 
      { 
        p=womentotalscore[i]; 
        womentotalscore[i]=womentotalscore[i+1]; 
        womentotalscore[i+1]=p; 
        q=a[i]; 
        a[i]=a[i+1]; 
        a[i+1]=q; 
      } 
    } 
  } 
  cout<<"按女團總分從大到小排序,以及對應(yīng)的院系編號為:"<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<a[j]<<setw(5); 
  } 
  cout<<endl; 
  for(j=0;j<n;j++) 
  { 
    cout<<womentotalscore[j]<<setw(5); 
  } 
  cout<<endl; 
} 
 
void gamescore::search(int academynum,int projectnum) 
{int j; 
  int k; 
  do 
  { 
  cout<<"1 查詢該院該單項成績的總分, 2 查詢該院總分,,3 查詢該院男團總分,4 查詢該院女團總分,5 按項目編號查詢,0 退出查詢"<<endl; 
  cout<<"請選擇:";  
  cin>>k; 
  if(k<0||k>5)  //判斷輸入的操作編號是否在目錄中,如果超出范圍重新輸入 
     { 
       cout<<"輸入有誤,請重新輸入要操作的項目編號"; 
       cin>>k; 
     }    
    switch(k) 
     { 
     case 1:  
       cout<<"編號為"<<academynum<<"的學院的第"<<projectnum<<"個項目的成績?yōu)?"; 
       cout<<score[academynum-1][projectnum-1]<<endl;break; 
     case 2:     
         cout<<"該院總分為:"<<academytotalscore(academynum)<<endl;break; 
     case 3:  
       cout<<"該院男團總分為:"<<academymentotalscore(academynum)<<endl;break; 
     case 4:  
       cout<<"該院女團總分:"<<academywomentotalscore(academynum)<<endl;break; 
     case 5: 
       cout<<"不同院系對應(yīng)的第"<<projectnum<<"個項目的成績?yōu)?"<<endl; 
        for(j=0;j<n;j++) 
        { 
          cout<<1+j<<setw(5);         
        } 
        cout<<endl; 
         for(j=0;j<n;j++) 
        {   
          cout<<score[j][projectnum-1]<<setw(5); 
        } 
         cout<<endl; 
        break; 
      
     default: return; 
    } 
 
  }while(1); 
} 
void gamescore::repair(int academynum,int projectnum) 
{ 
  cout<<"請重新輸入該項成績:"; 
    cin>>score[academynum-1][projectnum-1]; 
  cout<<"修改成功"<<endl; 
} 
void gamescore::remove(int academynum,int projectnum) 
{ 
  score[academynum-1][projectnum-1]=0; 
  cout<<"!!刪除成功"<<endl; 
} 
void gamescore::output1(int academynum) 
{ 
  //cout<<"該學院運動項目編號及對應(yīng)的成績?nèi)缦拢?<<endl; 
  for(int i=0;i<m+w;i++) 
  { 
    cout<<1+i<<setw(5); 
  } 
  cout<<endl; 
   for(i=0;i<m+w;i++) 
   {  
     cout<<score[academynum-1][i]<<setw(5); 
   } 
} 
void gamescore::output2(int academynum) 
{ 
  cout<<"該院男團成績?yōu)?<<academymentotalscore(academynum)<<endl; 
  cout<<"該院女團成績?yōu)?<<academywomentotalscore(academynum)<<endl; 
} 
 
///////////////////////////////////////////////////// 
void main() 
{ 
  int projectnum; 
  int academynum; 
  gamescore a; 
  int num;                               
////////////////////////////////////////////菜單 
  cout<<"        ****廣東海洋大學運動會成績管理系統(tǒng)****"<<endl; 
  cout<<endl; 
  cout<<"      **********************************************"<<endl; 
  cout<<"      **    1 輸入院系及其參加項目的成績   **"<<endl; 
  cout<<"      **    2 查詢某個院系參加某個項目的成績 **"<<endl; 
  cout<<"      **    3 修改一個項目的成績       **"<<endl; 
  cout<<"      **    4 刪除錯誤成績的記錄       **"<<endl; 
  cout<<"      **    5 輸出某個院系的得分表      **"<<endl; 
  cout<<"      **    6 輸出院系的團體得分表      **"<<endl; 
  cout<<"      **    7 對成績按院系進行排序      **"<<endl;  
  cout<<"      **    8 對成績按男團進行排序      **"<<endl; 
  cout<<"      **    9 對成績按女團進行排序      **"<<endl; 
  cout<<"      **   10 保存成績信息          **"<<endl; 
  cout<<"      **    0 退出該程序           **"<<endl; 
  cout<<"      **********************************************"<<endl<<endl; 
  cout<<"          輸入?yún)⒓釉合禂?shù) n="; 
  cin>>n; 
  cout<<"          輸入男子項目數(shù) m="; 
  cin>>m; 
  cout<<"          輸入女子項目數(shù) w="; 
  cin>>w; 
 
do{           
     cout<<"請選擇要操作的菜單標號:"; 
     cin>>num; 
     if(num>10||num<0)   
     { 
       cout<<"輸入有誤,請重新輸入要操作的項目編號:"; 
       cin>>num; 
     }       
     switch(num) 
     { 
     case 1:      
       a.input(); 
       break; 
     case 2: 
       cout<<"輸入要查找的院系:"; 
       cin>>academynum; 
       cout<<"輸入要查詢的運動項目編號:"; 
       cin>>projectnum; 
      a.search(academynum,projectnum); 
       break; 
     case 3:  
       cout<<"輸入要修改的院系編號"; 
       cin>>academynum; 
       cout<<"輸入要修改的運動項目的編號:"; 
       cin>>projectnum; 
       a.repair(academynum,projectnum); 
       break; 
     case 4: 
       cout<<"輸入要刪除成績所在的院系的編號:"; 
       cin>>academynum;  
       cout<<"輸入要刪除運動項目編號:"; 
       cin>>projectnum; 
       a.remove(academynum,projectnum); 
       break; 
     case 5: 
       cout<<"輸入要查詢成績的院系編號:"; 
       cin>>academynum; 
       a.output1(academynum); 
       break; 
     case 6: 
       cout<<"輸入要查詢團體成績的院系的編號:"; 
       cin>>academynum; 
       a.output2(academynum); 
       break; 
     case 7: 
        cout<<"該學院運動項目編號及對應(yīng)學院總分的成績?nèi)缦?"; 
        a.hold(); 
        a.sort1();break; 
     case 8: 
        cout<<"該學院運動項目編號及對應(yīng)男團的成績?nèi)缦?"; 
        a.hold(); 
        a.sort2();break; 
     case 9: 
        cout<<"該學院運動項目編號及對應(yīng)女團的成績?nèi)缦?"; 
        a.hold(); 
        a.sort3();break; 
     case 10: 
       a.save(); 
       cout<<"!!保存成功"<<endl;break; 
     default: return; 
     } 
  }while(1); 
} 

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • floyd算法實現(xiàn)思路及實例代碼

    floyd算法實現(xiàn)思路及實例代碼

    這篇文章主要介紹了floyd算法實現(xiàn)思路及實例代碼,有需要的朋友可以參考一下
    2014-01-01
  • Visual Studio 2019 DLL動態(tài)庫連接實例(圖文教程)

    Visual Studio 2019 DLL動態(tài)庫連接實例(圖文教程)

    這篇文章主要介紹了Visual Studio 2019 DLL動態(tài)庫連接實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • C語言計算代碼執(zhí)行所耗CPU時鐘周期

    C語言計算代碼執(zhí)行所耗CPU時鐘周期

    本文給大家介紹的是使用C語言來計算代碼執(zhí)行所耗CPU時鐘周期的代碼,非常的簡單實用,不過要依托于sync,有需要的小伙伴自己參考下吧。
    2015-03-03
  • 超詳細的cmake入門教程

    超詳細的cmake入門教程

    這篇文章主要介紹了超詳細的cmake入門教程,需要的朋友可以參考下
    2020-02-02
  • C++連接mysql數(shù)據(jù)庫并讀取數(shù)據(jù)的具體步驟

    C++連接mysql數(shù)據(jù)庫并讀取數(shù)據(jù)的具體步驟

    在實際開發(fā)中我們經(jīng)常需要對數(shù)據(jù)庫進行訪問,針對不同類型的數(shù)據(jù)庫(如MySQL、sqLite、Access、Excel等),如果采用不同的方法進行連接,會把我們搞崩潰,下面這篇文章主要給大家介紹了關(guān)于C++連接mysql數(shù)據(jù)庫并讀取數(shù)據(jù)的具體步驟,需要的朋友可以參考下
    2023-04-04
  • VScode+ESP32簡單環(huán)境搭建

    VScode+ESP32簡單環(huán)境搭建

    本文章向大家介紹ESP32-C3搭建環(huán)境教程,主要包括ESP32-C3搭建環(huán)境教程使用實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C語言單值二叉樹真題講解

    C語言單值二叉樹真題講解

    單值二叉樹你可能之前沒見過,如果二叉樹每個節(jié)點都具有相同的值,那么該二叉樹就是單值二叉樹,讓我們通過一個真題來深刻了解它吧
    2022-04-04
  • C++為什么要用指針而不直接使用對象?

    C++為什么要用指針而不直接使用對象?

    今天小編就為大家分享一篇關(guān)于C++為什么要用指針而不直接使用對象?,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • c++傳遞函數(shù)指針和bind的示例

    c++傳遞函數(shù)指針和bind的示例

    這篇文章主要介紹了c++傳遞函數(shù)指針和bind的示例,需要的朋友可以參考下
    2014-05-05
  • 詳解C語言的基本數(shù)據(jù)類型

    詳解C語言的基本數(shù)據(jù)類型

    這篇文章主要為大家介紹了C語言的基本數(shù)據(jù)類型,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論

博兴县| 常德市| 乌海市| 慈利县| 城步| 廊坊市| 平潭县| 吐鲁番市| 确山县| 钟祥市| 淮北市| 茶陵县| 山东省| 德兴市| 松江区| 和平区| 霍城县| 卢龙县| 改则县| 达尔| 洛扎县| 曲水县| 久治县| 榆林市| 凯里市| 西林县| 佳木斯市| 巴中市| 三台县| 万载县| 安泽县| 麦盖提县| 瑞昌市| 济南市| 浪卡子县| 南平市| 盐山县| 邓州市| 临夏县| 治县。| 祥云县|