1 #include <iostream>
2
3 using namespace std;
4
5 //冒泡排序
6 //对数组进行从小到大排序
7 void bubbleSort(int arr[], int length)
8 {
9 for (int i = length - 1; i >= 0; i--)
10 {
11 //如果经过一轮扫描后flag仍为0,表示数组已排序好,无需再进行排序
12 int flag = 0;
13 for (int j = 0; j < i; j++)
14 {
15 //相邻元素进行比较,如果左边的元素大于右边的,则进行交换
16 if (arr[j] > arr[j+1])
17 {
18 int temp = arr[j];
19 arr[j] = arr[j + 1];
20 arr[j + 1] = temp;
21 flag++;
22 }
23 }
24 if (flag == 0)
25 break;
26 }
27 }
28
29 //数组打印函数
30 void printArray(int arr[], int length)
31 {
32 for (int i = 0; i < length; i++)
33 {
34 cout << arr[i] << " ";
35 }
36 cout << endl;
37 }
38
39 int main()
40 {
41 int arr[] = { 5,3,7,1,4,9 };
42 cout << "排序前: " << endl;
43 printArray(arr, 6);
44
45 bubbleSort(arr, 6);
46
47 cout << "排序后: " << endl;
48 printArray(arr, 6);
49 return 0;
50 }