鸿鸿哥最近学习了指针,感觉这个知识点有点难以理解,于是想要通过编程实践来掌握它。鸿鸿哥以前学习数组(第7章)的时候已经掌握了冒泡排序的一般写法,现在他想用指针来实现排序的功能函数。但是他遇到了困难,你能帮帮他吗? 指针实现冒泡排序函数,函数名统一用void bubbleSort(int *p,int c)。 具体方法自己实现。 输入格式: 一组输入,第一行是待排数据个数n, 第二行是数据的具体值。 输出格式: 输出排序后的数,两个数之间以空格间开,最后一个数字末尾有空格 输入样例: 在这里给出一组输入。例如: 5 503 87 512 61 908 输出样例: 在这里给出相应的输出。例如: 61 87 503 512 908
时间: 2024-03-17 21:43:08 浏览: 30
当然可以帮助你啦!下面是对应的代码:
```c++
#include <stdio.h>
void bubbleSort(int *p, int c) {
int i, j, temp;
for (i = 0; i < c - 1; i++) {
for (j = 0; j < c - 1 - i; j++) {
if (*(p + j) > *(p + j + 1)) {
temp = *(p + j);
*(p + j) = *(p + j + 1);
*(p + j + 1) = temp;
}
}
}
}
int main() {
int n, i;
scanf("%d", &n);
int a[n];
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
bubbleSort(a, n);
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
这里要解释一下指针的使用。指针就是一个地址,它指向一个变量的地址,可以通过指针改变变量的值。在这个函数中,我们传入指向数组的指针p,然后在函数中对数组进行排序操作。注意,在函数中改变数组的值可以直接使用指针,不需要使用数组下标的方式。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.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)
![](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)