返回列表 發帖

[作業] 交換排序

本帖最後由 周政輝 於 2016-8-5 22:13 編輯

運用上課觀念
實作出交換排序

本帖隱藏的內容需要回復才可以瀏覽

本帖最後由 蔡庭豪 於 2016-8-6 11:12 編輯
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.         int number[5],o[5],temp;
  7.         for(int x=0;x<5;x++){
  8.             cout<<"輸入第"<<x+1<<"數"<<endl;
  9.             cin>>number[x];         
  10.         }
  11.         cout<<"排序前"<<endl;
  12.         for(int y=0;y<5;y++){
  13.             cout<<number[y]<<",";         
  14.         }               
  15.         for(int i=0;i<sizeof(number)/sizeof(int);i++){
  16.                
  17.             for(int j=0;j<sizeof(number)/sizeof(int);j++){
  18.                     
  19.                 if(number[j]<number[j+1]){
  20.                     temp=number[j];
  21.                     number[j]=number[i];
  22.                     number[i]=temp;
  23.                 }
  24.                 else{
  25.                      o[i]=temp;
  26.                 }
  27.                                                 
  28.             }            
  29.         }
  30.         cout<<"排序後"<<endl;
  31.         for(int z=0;z<5;z++){
  32.             cout<<o[z]<<",";         
  33.         }                           
  34.         system("pause");
  35.         return 0;
  36. }
複製代碼

TOP

本帖最後由 蔡季樺 於 2016-8-6 10:29 編輯

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

TOP

回復 1# 周政輝





    #include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
    int a[5] , tmp=0;
    for ( int i=0 ; i<5 ; i++ )
    {
        cout<<"請輸入第"<<i+1<<"個數字: ";
        cin>>a;
    }
    cout << "您所輸入的數字順序: ";
    for ( int i=0 ; i<5 ; i++ )
    {
        cout << a << " , " ;
    }
   
   
    for ( int x=0; x<4; x++ )
    {
        for ( int y=x; y<4; y++ )
        {
            if ( a[x] > a[y] )
            {
             tmp = a[x] ;
             a[x]= a[y] ;
             a[y]= tmp  ;
             }else{
                   a[x] = tmp;
                   }
        }
    }
   
   
   
   
    cout << endl;
    cout << "系統自動排序後的數: " ;
    for ( int x=0 ; x<5 ;x++ )
    {
        cout << a[x] << " , " ;
    }
    cout << endl;
    system("pause");
    return 0;
}

TOP

返回列表