c++用指针作为函数参数,输入a,b两个数并按照大小顺顺序输出
时间: 2024-10-29 18:12:57 浏览: 28
在 C++ 中,如果你想用指针作为函数参数,可以设计一个函数接受两个整数的指针,并利用指针来交换它们的值,然后通过另一个函数输出排序后的结果。这里是一个简单的示例:
```cpp
#include <iostream>
// 函数用于交换两个整数的值
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 使用指针作为参数的函数,输出按顺序排列的数值
void printSorted(int* arr, int size) {
if (size == 0 || size == 1) {
std::cout << "Only one element, no need to sort.\n";
return;
}
if (*arr > *(arr + 1)) { // 如果第一个元素大于第二个
swap(arr, arr + 1);
}
for (int i = 1; i < size - 1; ++i) { // 从第二个元素开始遍历
if (*(arr + i) > *(arr + i + 1)) {
swap(arr + i, arr + i + 1);
}
}
for (int i = 0; i < size; ++i) {
std::cout << "Sorted value at index " << i << ": " << *(arr + i) << "\n";
}
}
int main() {
int a = 5, b = 3;
int* ptrA = &a;
int* ptrB = &b;
printSorted(ptrA, 2); // 输出 a 和 b 排序后的值
return 0;
}
```
在这个例子中,我们首先定义了一个 `swap` 函数接收两个整数指针,然后在 `printSorted` 函数中通过比较和交换实现了排序。在 `main` 函数里,我们将变量 `a` 和 `b` 的地址赋给指针 `ptrA` 和 `ptrB`,再传递给 `printSorted`。
阅读全文