/**
* 交换.
* @param a
* @param b
*/void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 找到最小下标int findMin(intarray[], int low, int high) {
int minKey = low;
int minValue = array[low];
int i = 0;
for (i = low + 1; i < high; i++) {
if (array[i] < minValue) {
minKey = i;
minValue = array[i];
}
}
return minKey;
}
// 选择排序主函数void select_sort() {
int i;
intarray[] = {12, 25, 21, 14, 1, 2, 68, 85, 45};
int high = sizeof(array)/ sizeof(int);
for (i = 0; i < high; i++) {
int min = findMin(array, i, high);
if (min != i) {
swap(&array[i], &array[min]);
}
}
for (i = 0; i < high; i++) {
printf("%d\n", array[i]);
}
}