冒泡冒泡 其实就是无限比较交换 两个函数 Bubble冒泡函数,相邻比较交换Show函数,显示数组flag起到简化的作用,若无需冒泡直接break #include<stdio.h> #include<Windows.h> //冒泡 void Bubble(int arr[], int num) //但其实传的是指针,也可以写int *arr { int i = 0; for (; i < num - 1; i++) { int j = 0; int flag = 1; for (; j <num - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; flag = 0; } } if (flag == 1) { break; } } } void Show(int arr[], int num) { int i = 0; for (; i < num; i++) { printf("%d ", arr[i]); } printf("\n"); } int main() { int arr[] = { 19, 18, 7, 20, 8, 1, 2, 3, 11, 21, 4 }; int num = sizeof(arr) / sizeof(arr[0]); Show(arr, num); Bubble(arr, num); Show(arr, num); system("pause"); return 0; }