1 #include <iostream> 2 3 using namespace std; 4 5 //选择排序 6 void selectSort(int arr[], int length) 7 { 8 for (int i = 0; i < length - 2; i++) 9 { 10 int minIndex = i; //用于记录最小元素的索引 11 //找到最小的元素所在的索引 12 for (int j = i + 1; j < length - 1; j++) 13 { 14 if (arr[j] < arr[minIndex]) 15 minIndex = j; 16 } 17 //如果最小元素索引与i不一样,则进行交换 18 if (minIndex != i) 19 { 20 int temp = arr[i]; 21 arr[i] = arr[minIndex]; 22 arr[minIndex] = temp; 23 } 24 } 25 } 26 27 //数组打印函数 28 void printArray(int arr[], int length) 29 { 30 for (int i = 0; i < length; i++) 31 { 32 cout << arr[i] << " "; 33 } 34 cout << endl; 35 } 36 37 int main() 38 { 39 int arr[] = { 5,3,7,1,4,9 }; 40 cout << "排序前: " << endl; 41 printArray(arr, 6); 42 43 selectSort(arr, 6); 44 45 cout << "排序后: " << endl; 46 printArray(arr, 6); 47 system("pause"); 48 return 0; 49 }