#include stdio.hvoid bubble_sort(int arr[], int sz)//冒泡排序{int i 0, j 0;for (i 0; i sz - 1; i){for (j 0; j sz - 1 - i; j){if (arr[j] arr[j 1]){int tmp arr[j];arr[j] arr[j 1];arr[j 1] tmp;}}}}void selection_sort(int arr[], int sz)//选择排序{int i 0, j 0, index 0;//index是后面元素的最小值的下标for (i 0; i sz - 1; i){index i;//假设i的位置就是最小值for (j i 1; j sz; j){if (arr[j] arr[index]){index j;}}//出了循环index一定是最小值的下标int tmp arr[i];arr[i] arr[index];arr[index] tmp;//让最小值和当前值交换确保前面的是最小的}}void print(int arr[], int sz)//打印整个一维数组{for (int i 0; i sz; i)printf(%d , arr[i]);printf(\n);}int main(){int arr1[] { 10,9,8,7,6,5,4,3,2,1 };int sz1 sizeof(arr1) / sizeof(arr1[0]);print(arr1, sz1);bubble_sort(arr1, sz1);print(arr1, sz1);printf(\n);int arr2[] { 10,9,8,7,6,5,4,3,2,1,0 };int sz2 sizeof(arr2) / sizeof(arr2[0]);print(arr2, sz2);selection_sort(arr2, sz2);print(arr2, sz2);return 0;}