1、基本思想。在要排序的一组数中,选出最小的一个数与第一个位置的数交换,然后在剩下的数中找出最小的数与第二个位置的数交换。如此进行到倒数第二个数与倒数第一个比较为止。
2、实现。
int main() { int a[10]={11,42,53,25,36,6,75,8,26,4}; std::cout<<"before sort:"<<std::endl; for(int i=0;i<10;++i) std::cout<<a[i]<<"\t"; std::cout<<std::endl; for(int i=0;i<9;++i) { int j=i+1; int min=a[j]; int pos=-1; for(;j<10;++j) { if(a[j]<min) { min=a[j]; pos=j; } } if(pos!=-1) std::swap(a[i],a[pos]); } std::cout<<"after sort:"<<std::endl; for(int i=0;i<10;++i) std::cout<<a[i]<<"\t"; std::cout<<std::endl; return 0; }
3、运行结果截图。