[c++]選擇法排列10個數字的大小


#include <iostream>
using namespace std;

void SelectA(int iA[],int iB)
{
    int iMax,iTem;
    
    for (int i = 0;i < iB;i++)
    {
         iMax = i;
        for (int j = i + 1;j <iB;j++)
        {
            if (iA[iMax] < iA[j])
            {
                 iMax = j;//如果比iA[iMax]大就記錄下標
            }
        }

        if (iMax != i)//如果iMax的值變了就說明有比他大的數字 就進行交換
        {
            iTem = iA[i];
            iA[i] = iA[iMax];
            iA[iMax] = iTem;

        }
    }
    
}
int main()
{
     int *iA = new int[100];
    cout<<"請輸入10個數字:"<<endl;

    for (int i = 0;i < 10;i++)
    {
        cin>>iA[i];
    }

    SelectA(iA,10);

    cout<<"按從大到小的順序排列后:"<<endl;
    for (int i = 0;i < 10;i++)
    {
        cout<<iA[i]<<" ";
    }

    delete [] iA;
    system("pause");
    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM