选择排序[O(n^2), 不稳定],不断选最小。

#include <stdio.h>

void selectSort(int a[], int n)
{
	for(int i=0; i<n;i++) {
		int min = i;
		for(int j=i+1;j<n;j++) {
			if(a[j] < a[min]) min=j;
		}
		if(min != i) {
			int tmp = a[i];
			a[i] = a[min];
			a[min] = tmp;
		}
	}
}

void printArray(int a[], int n)
{
	for(int i=0; i<n; i++) {
		printf("%d ", a[i]);
	}
	printf("\n");
}

int main()
{
	int a[] = {1,8,4,5,7,2};
	printArray(a, 6);
	selectSort(a, 6);
	printArray(a, 6);
}