Board logo

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

作者: 陳品肇    時間: 2019-3-8 21:22     標題: [作業] 排序 (四)

本帖最後由 陳品肇 於 2019-3-16 12:23 編輯

假設班上有五位同學, 其成績表格如下,
試利用氣泡排序法, 為成績表加上排名,
執行畫面如下.
[attach]6050[/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. }
複製代碼

作者: 蔡依宸    時間: 2019-3-16 16:02

此帖僅作者可見
作者: 陳柏霖    時間: 2019-3-16 16:06

此帖僅作者可見
作者: 譚詩澐    時間: 2019-3-16 16:09

此帖僅作者可見
作者: 戴安利    時間: 2019-3-16 16:13

此帖僅作者可見
作者: 戴偉宸    時間: 2019-3-16 16:14

此帖僅作者可見
作者: 戴唯陞    時間: 2019-3-16 16:47

此帖僅作者可見
作者: 蔡季庭    時間: 2019-3-16 17:34

此帖僅作者可見




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