用c++写一个用指针的冒泡排序
时间: 2024-05-15 14:14:56 浏览: 11
以下是使用指针的冒泡排序的示例代码:
```
#include <stdio.h>
void bubble_sort(int *arr, int size) {
int i, j, temp;
for (i = 0; i < size - 1; i++) {
for (j = 0; j < size - i - 1; j++) {
if (*(arr + j) > *(arr + j + 1)) {
temp = *(arr + j);
*(arr + j) = *(arr + j + 1);
*(arr + j + 1) = temp;
}
}
}
}
int main() {
int arr[] = {5, 2, 9, 3, 7, 1};
int size = sizeof(arr) / sizeof(arr[0]);
int i;
printf("Original array:\n");
for (i = 0; i < size; i++) {
printf("%d ", *(arr + i));
}
bubble_sort(arr, size);
printf("\nSorted array:\n");
for (i = 0; i < size; i++) {
printf("%d ", *(arr + i));
}
return 0;
}
```
在此示例中,我们定义了一个名为`bubble_sort`的函数,该函数接受一个整数指针和数组大小作为参数,并使用指针实现了冒泡排序。在`main`函数中,我们声明一个整数数组,并使用`sizeof`运算符计算数组大小。我们调用`bubble_sort`函数来对数组进行排序,并使用指针打印已排序的数组。