Board logo

標題: 排序 (一) [打印本頁]

作者: 鄭繼威    時間: 2023-7-21 01:36     標題: 排序 (一)

利用選擇排序法, 將任意6個整數, 由小而大排列出來.

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={12,57,-6,-32,0,23};
  8.    
  9.     cout<<"排序前: ";
  10.     for(int i=0; i<6; i++)
  11.     {
  12.         cout<<n[i]<<" ";
  13.     }
  14.         cout<<endl;
  15.        
  16.     //開始排序
  17.     for(int i=0; i<5; i++)
  18.     {
  19.         for(int j=i+1; j<6; j++)
  20.         {
  21.             //倆倆(i,j)比較
  22.             //右邊小於左邊就交換->換到最後最左邊會最小
  23.             if(n[j]<n[i])
  24.             {
  25.                 //兩數交換
  26.                 tmp=n[j];
  27.                 n[j]=n[i];
  28.                 n[i]=tmp;
  29.             }
  30.         }   
  31.     }
  32.    
  33.     cout<<"排序後: ";
  34.     for(int i=0; i<6; i++)
  35.     {
  36.             cout<<n[i]<<" ";
  37.     }
  38.         cout<<endl;
  39.        
  40.     system("pause");
  41.     return 0;
  42. }
複製代碼

作者: 蔡沛倢    時間: 2023-8-6 20:23

本帖最後由 蔡沛倢 於 2023-8-11 19:40 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. #include<ctime>
  4. using namespace std;
  5. int main()
  6. {

  7.     int b;
  8.     int a[]={5,8,9,4,10,2};
  9.     //整理前
  10.     cout<<"整理前:";
  11.     for(int c=0;c<6;c++)
  12.     {
  13.         cout<<a[c]<<" ";
  14.     }
  15.         cout<<endl;
  16.         //開始交換
  17.     for(int i=0;i<5;i++)
  18.     {
  19.         for(int j=i+1;j<6;j++)
  20.         {  
  21.                     //判斷a[i]是否小於a[j]
  22.             if(a[i]>a[j])
  23.             {
  24.                b=a[j];
  25.                a[j]=a[i];
  26.                a[i]=b;
  27.             }
  28.                        
  29.         }
  30.     }
  31.         //整理前
  32.         cout<<"整理後:";
  33.         for(int c=0;c<6;c++)
  34.         {
  35.             cout<<a[c]<<" ";
  36.         }
  37.         cout<<endl;
  38.     system("pause");
  39.     return 0;
  40. }
複製代碼

作者: 呂宗晉    時間: 2023-8-11 13:01

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={12,57,-6,-32,0,23};
  8.    
  9.     cout<<"排序前: ";
  10.     for(int i=0; i<6; i++)
  11.     {
  12.         cout<<n[i]<<" ";
  13.     }
  14.         cout<<endl;
  15.     for(int i=0; i<5; i++)
  16.     {
  17.         for(int j=i+1; j<6; j++)
  18.         {
  19.             if(n[j]<n[i])
  20.             {
  21.                 tmp=n[j];
  22.                 n[j]=n[i];
  23.                 n[i]=tmp;
  24.             }
  25.         }   
  26.     }
  27.    
  28.     cout<<"排序後: ";
  29.     for(int i=0; i<6; i++)
  30.     {
  31.             cout<<n[i]<<" ";
  32.     }
  33.         cout<<endl;
  34.       
  35.     system("pause");
  36.     return 0;
  37. }
複製代碼

作者: 呂得銓    時間: 2023-8-11 15:31

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={12,57,-6,-32,0,23};
  8.     cout<<"排序前: ";
  9.     for(int i=0; i<6; i++)
  10.     {
  11.     cout<<n[i]<<" ";
  12.     }
  13.     cout<<endl;
  14.     for(int i=0; i<5; i++)
  15.     {
  16.     for(int j=i+1; j<6; j++)
  17.     {
  18.     if(n[j]<n[i])
  19.     {
  20.     tmp=n[j];
  21.     n[j]=n[i];
  22.     n[i]=tmp;
  23.         }
  24.     }   
  25.     }
  26.     cout<<"排序後: ";
  27.     for(int i=0; i<6; i++)
  28.     {
  29.     cout<<n[i]<<" ";
  30.     }
  31.     cout<<endl;
  32.     system("pause");
  33.     return 0;
  34. }
複製代碼

作者: 何權晉    時間: 2023-8-11 16:32

本帖最後由 何權晉 於 2023-8-11 20:28 編輯
  1. int main()
  2. {
  3.    int tmp;
  4.    int z[]={5,-20,1,34,21,8};
  5.    
  6.    cout<<"Before: ";
  7.    for(int i=0;i<=5;i++)
  8.    {
  9.        cout<<z[i]<<" ";
  10.    }
  11.    
  12.    
  13.     for(int i=0;i<=5;i++)
  14.     {
  15.         for(int j=i+1;j<=5;j++)
  16.         {
  17.             if(z[i]>z[j])
  18.             {
  19.                 tmp=z[j];
  20.                 z[j]=z[i];
  21.                 z[i]=tmp;
  22.             }
  23.         }
  24.     }
  25.    
  26.     cout<<"After: ";
  27.     for(int i=0;i<=5;i++)
  28.     {
  29.         cout<<z[i]<<" ";
  30.     }
  31.    
  32.     system("pause");
  33.     return 0;
  34. }
複製代碼

作者: 李柏漢    時間: 2023-8-11 19:42

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={12,57,-6,-32,0,23};
  8.     cout<<"排序前:";
  9.     for(int i=0; i<6; i++)
  10.     {
  11.         cout<<n[i]<<" ";
  12.     }
  13.         cout<<endl;   
  14.     for(int i=0; i<5; i++)
  15.     {
  16.         for(int j=i+1; j<6; j++)
  17.         {
  18.             if(n[j]<n[i])
  19.             {
  20.                 tmp=n[j];
  21.                 n[j]=n[i];
  22.                 n[i]=tmp;
  23.             }
  24.         }   
  25.     }
  26.     cout<<"排序後:";
  27.     for(int i=0; i<6; i++)
  28.     {
  29.             cout<<n[i]<<" ";
  30.     }
  31.         cout<<endl;  
  32.     system("pause");
  33.     return 0;
  34. }
複製代碼

作者: 黃子豪    時間: 2023-8-11 19:44

  1. #include<iostream>
  2. using namespace std;
  3. int main(){
  4.     int tmp;
  5.     int n[]={12,57,-6,-32,0,23};
  6.    
  7.     cout<<"排序前: ";
  8.     for(int i=0; i<6; i++)
  9.     {
  10.         cout<<n[i]<<" ";
  11.     }
  12.     cout<<endl;
  13.    
  14.     for(int i=0; i<5; i++){
  15.        for(int j=i+1; j<6; j++){
  16.            if(n[i]<n[j]){
  17.            tmp=n[j];
  18.            n[j]=n[i];
  19.            n[i]=tmp;
  20.            }
  21.        }        
  22.     }
  23.    
  24.     cout<<"排序後: ";
  25.     for(int i=0; i<6; i++)
  26.     {
  27.         cout<<n[i]<<" ";
  28.     }
  29.     cout<<endl;
  30.    
  31.     system("pause");
  32.     return 0;
  33. }
複製代碼

作者: 廖秝瑜    時間: 2023-8-11 19:46

本帖最後由 廖秝瑜 於 2023-8-11 20:29 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a;
  7.     int n[]={12,57,-6,-32,0,23};
  8.     cout<<"排序前: ";
  9.     for(int i=0; i<6; i++)
  10.     {
  11.         cout<<n[i]<<" ";
  12.     }
  13.         cout<<endl;
  14.         
  15.         
  16.         for(int i=0; i<=5; i++)
  17.         {
  18.                 for(int j=i+1; j<=6; j++)
  19.                 {
  20.                         if(n[j]<n[i])
  21.                         {
  22.                            a=n[j];
  23.                            n[j]=n[i];
  24.                            n[i]=a;
  25.                         }
  26.                  }
  27.         }
  28.         cout<<"排序後";
  29.         for(int i=0; i<6; i++)
  30.         {
  31.             cout<<n[i]<<" ";
  32.     }
  33.         cout<<endl;  
  34.                
  35.    
  36.    
  37.    
  38.    
  39.    
  40.     system("pause");
  41.     return 0;
  42. }
複製代碼

作者: 盧玄皓    時間: 2023-8-11 19:50

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={22,14,12,6,7,1};
  8.    
  9.    cout<<"排序前: ... ";
  10.     for(int i=0; i<6; i++)
  11.     {
  12.         cout<<n[i]<<" ";
  13.     }
  14.         cout<<endl;
  15.        for(int i=0; i<5; i++)
  16.     {
  17.         for(int j=i+1; j<6; j++)
  18.         {  
  19.             
  20.             if(n[j]<n[i])
  21.              tmp=n[j];
  22.                 n[j]=n[i];
  23.                 n[i]=tmp;
  24.             }
  25.         }   
  26.     }
  27.    
  28.     cout<<"排序後: ";
  29.     for(int i=0; i<6; i++)
  30.     {
  31.             cout<<n[i]<<" ";
  32.     }
  33.         cout<<endl;
  34.            system("pause");
  35.     return 0;
  36. }
  37.      
複製代碼

作者: 張絜晰    時間: 2023-8-11 19:51

本帖最後由 張絜晰 於 2023-8-11 20:39 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7. int a[]={-3,6,22,322,1};
  8. for(int i=0;i<5;i++){
  9.         cout<<a[i]<<" ";
  10.         }
  11.         cout<<endl;
  12.       for (int i=0;i<4;i++){
  13.           for(int j=0;j<5;j++){
  14.                   if (a[i]<a[j]){
  15.                                  tmp=a[i];
  16.                                  a[i]=a[j];
  17.                                  a[j]=tmp;
  18.                                  }
  19.                   }
  20.                   }

  21. for(int i=0;i<5;i++){
  22.         cout<<a[i]<<" ";
  23.         }

  24. system("pause");
  25. return 0;
  26. }
複製代碼

作者: 邱品惟    時間: 2023-8-18 16:48

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.     int tmp;
  6.     int n[]={12,57,-6,-32,0,23};
  7.    
  8.     cout<<"排序前: ";
  9.     for(int i=0; i<6; i++)
  10.     {
  11.         cout<<n[i]<<" ";
  12.     }
  13.         cout<<endl;
  14.     for(int i=0; i<5; i++)
  15.     {
  16.         for(int j=i+1; j<6; j++)
  17.         {
  18.             if(n[j]<n[i])
  19.             {
  20.                 tmp=n[j];
  21.                 n[j]=n[i];
  22.                 n[i]=tmp;
  23.             }
  24.         }
  25.         cout<<"第"<<i+1<<"次:";
  26.         for(int a=0;a<=5;a++)
  27.         {
  28.             cout<<n[a]<<" ";
  29.         }
  30.         cout<<endl;   
  31.     }
  32.    
  33.     cout<<"排序後: ";
  34.     for(int i=0; i<6; i++)
  35.     {
  36.             cout<<n[i]<<" ";
  37.     }
  38.         cout<<endl;
  39.       
  40.     system("pause");
  41.     return 0;
  42. }
複製代碼

作者: 黃品禎    時間: 2023-8-19 17:19

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.   int n[]={12,57,-6,-32,0,23};
  7.   for(int i=0;i<=5;i++)
  8.   {
  9.     cout<<n[i]<<" ";      
  10.   }
  11.   cout<<"\n";
  12.   for(int i=0;i<=sizeof(n)/sizeof(int)-2;i++)
  13.   {
  14.     for(int j=i+1;j<=sizeof(n)/sizeof(int)-1;j++)
  15.     {
  16.         if(n[j]<n[i])
  17.         {
  18.           int tmp;
  19.           tmp=n[j];
  20.           n[j]=n[i];
  21.           n[i]=tmp;         
  22.         }   
  23.     }      
  24.   }
  25.   for(int i=0;i<=3+2;i++)
  26.   {
  27.     cout<<n[i]<<" ";      
  28.   }
  29. system("pause");
  30. return 0;
  31. }
複製代碼

作者: 朱奕祈    時間: 2024-4-8 19:33

  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int tmp;
  7.     int n[]={12,57,-6,-32,0,23};
  8.    
  9.     cout<<"排序前:";
  10.     for(int i=0; i<6; i++)
  11.     {
  12.         cout<<n[i]<<" ";
  13.     }
  14.         cout<<endl;
  15.     for(int i=0; i<5; i++)
  16.     {
  17.         for(int j=i+1; j<6; j++)
  18.         {
  19.             if(n[j]<n[i])
  20.             {
  21.                 tmp=n[j];
  22.                 n[j]=n[i];
  23.                 n[i]=tmp;
  24.             }
  25.         }   
  26.     }
  27.    
  28.     cout<<"排序後:";
  29.     for(int i=0; i<6; i++)
  30.     {
  31.             cout<<n[i]<<" ";
  32.     }
  33.         cout<<endl;
  34.       
  35.     system("pause");
  36.     return 0;
  37. }
複製代碼





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