c++语言的数字排序问题

随机输入n个整数数字,然后按从小到大的排列方法输出
初学者,需要简单的方法,不要太复杂

最容易理解的应该是直接插入排序了:

#include <iostream>
using namespace std;
//插入排序,从小到大
void insertPX(int a[],int n){
    for(int i=1;i<n;i++){
        int ends=i-1;
        int m=a[i];
        for(;ends>=0&&m<=a[ends];ends--){
            a[ends+1]=a[ends];
        }
        a[ends+1]=m;
    }
    return;
}
int main()
{
    int a[20]={0};
    int n=0;
    cin>>n;
    for(int i=0;i<20&&i<n;i++){
        cin>>a[i];
    }
    insertPX(a,n);
    for(int i=0;i<20&&i<n;i++){
        cout<<a[i]<<" ";
    }
    return 0;
}

还有选择排序:

//选择排序,从小到大
void selectPX(int a[],int n){
    for(int i=0;i<n-1;i++){
        int mins=i;
        for(int j=i+1;j<n;j++){
            if(a[j]<a[mins])
                mins=j;
        }
        if(mins!=i){
            int m=a[i];
            a[i]=a[mins];
            a[mins]=m;
        }
    }
    return;
}