Board logo

標題: [作業] 排序 (四) [打印本頁]

作者: tonyh    時間: 2014-6-7 17:21     標題: [作業] 排序 (四)

本帖最後由 tonyh 於 2014-6-14 16:33 編輯

假設班上有五位同學, 其成績表格如下,
試利用氣泡排序法, 為成績表加上排名,
執行畫面如下.

[attach]898[/attach]
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     string tmp2;
  8.     string name[5]={"大雄","小叮噹","宜靜","技安","阿福"};
  9.     int score[5]={60,80,100,40,75};
  10.     cout<<"原始資料"<<endl;
  11.     cout<<"-------------"<<endl;
  12.     cout<<"姓名\t成績"<<endl;
  13.     cout<<"-------------"<<endl;
  14.     for(int i=0; i<5; i++)
  15.         cout<<name[i]<<"\t"<<score[i]<<endl;
  16.     cout<<endl;
  17.     for(int i=0; i<4; i++)
  18.     {
  19.         for(int j=i+1; j<5; j++)
  20.         {
  21.              if(score[j]>score[i])
  22.              {
  23.                   tmp=score[i];
  24.                   score[i]=score[j];
  25.                   score[j]=tmp;
  26.                   tmp2=name[i];
  27.                   name[i]=name[j];
  28.                   name[j]=tmp2;
  29.              }
  30.         }
  31.     }
  32.     cout<<"依成績排序後資料"<<endl;
  33.     cout<<"---------------------"<<endl;
  34.     cout<<"姓名\t成績\t排名"<<endl;
  35.     cout<<"---------------------"<<endl;
  36.     for(int i=0; i<5; i++)
  37.         cout<<name[i]<<"\t"<<score[i]<<"\t"<<i+1<<endl;               
  38.     cout<<endl;
  39.     system("pause");     
  40.     return 0;   
  41. }
複製代碼

作者: 李允軒    時間: 2014-6-7 18:08

此帖僅作者可見
作者: 張彥承    時間: 2014-6-7 19:50

此帖僅作者可見
作者: 張峻瑋    時間: 2014-6-14 11:22

此帖僅作者可見
作者: 周雍程    時間: 2014-6-14 11:22

此帖僅作者可見
作者: 林宇翔    時間: 2014-6-14 15:41

此帖僅作者可見
作者: 劉得旗    時間: 2014-6-14 16:37

此帖僅作者可見
作者: 張郁庭    時間: 2014-6-20 19:51

此帖僅作者可見




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2