实参、形参都是指针,实现冒泡算法
时间: 2024-12-25 09:31:06 浏览: 13
实参(实际参数)是在函数调用时传递给函数的具体值,它们并不直接作为指针处理,但在某些语言(如C++)中可以使用引用或者指针间接传递。形参(形式参数)则是函数声明时定义的变量,它是函数内部的一个局部变量,用于接收实际参数的值。
冒泡排序是一种简单的排序算法,它通过不断交换相邻的未排序元素,将较大的数逐步“浮”到数组顶部。以下是使用C++实现冒泡排序的一个例子,其中并未直接涉及指针,而是通过参数复制实现:
```cpp
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
// 交换arr[j]和arr[j+1]
std::swap(arr[j], arr[j + 1]);
}
}
}
}
// 调用函数,传入实参数组和长度
int main() {
int numbers[] = {64, 34, 25, 12, 22, 11, 90};
int size = sizeof(numbers) / sizeof(numbers[0]);
bubbleSort(numbers, size);
// 输出已排序的数组
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
```
在这个示例中,`arr`和`n`分别代表形参和实参,实参`numbers`的值会被复制给形参`arr[]`,然后对这个副本进行操作,不会影响原始数组。
阅读全文