思想:事先记录第一个数的位置,先用第一个数和后面所有的数进行比较,记录下最小数的位置,然后与第一个数做交换,这样第一个数就是最小的数,按照这种方法依次对后面的数进行操作.
题目:用选择排序法对实现对10个数进行排序.
 1#include<iostream>
 2using namespace std;
 3const int size=10;
 4int main()
 5{
 6    int i,j,temp;
 7    int k;//设立一个记录最小数的变量
 8    int a[size];
 9    for(i=0;i<size;i++)
10    {
11        cin>>a[i];
12    }

13    for(i=0;i<size-1;i++)
14    {
15        k=i;                //记录最小数的位置
16        for(j=i+1;j<size;j++)
17        {
18            if(a[k]>a[j])
19            {
20                k=j;
21            }

22        }

23        if(i!=k)
24        {
25            temp=a[k];
26            a[k]=a[i];
27            a[i]=temp;
28        }

29
30        
31    }

32    for(i=0;i<size;i++)
33    {
34        cout<<a[i]<<" ";
35    }

36    return 0;
37}