帮我写一个c++的冒泡算法
时间: 2023-05-29 12:02:24 浏览: 53
下面是一个C语言的冒泡排序算法示例:
```
#include <stdio.h>
void bubble_sort(int *arr, int size) {
int i, j, tmp;
for (i = 0; i < size - 1; i++) {
for (j = 0; j < size - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
}
int main() {
int arr[] = {5, 3, 1, 9, 8, 2, 4, 7, 6};
int size = sizeof(arr) / sizeof(int);
printf("Before sorting: ");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
bubble_sort(arr, size);
printf("After sorting: ");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
该程序首先定义了一个 `bubble_sort` 函数,该函数接受一个整型指针数组和它的大小作为输入,然后通过冒泡排序算法对数组进行排序。排序算法中,外层循环控制排序次数,内层循环控制比较和交换操作。
最后在主函数中定义并初始化了一个整型数组,对数组进行了排序,并输出排序前后的数组元素。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)