c++用指针将一维数组的n个整数逆序放置
时间: 2024-12-10 13:32:01 浏览: 25
在C++中,你可以使用指针来实现一维数组元素的逆序排列。这里是一个简单的例子,假设有一个整型数组`arr`,长度为`n`:
```cpp
#include <iostream>
// 定义函数,接受指向数组首元素的指针和数组长度
void reverseArray(int* arr, int n) {
// 如果数组为空或只有一个元素,无需反转
if (n <= 1)
return;
// 双指针法,一个从头开始,一个从尾开始,交换元素并向中间移动
int start = 0;
int end = n - 1;
while (start < end) {
// 交换 arr[start] 和 arr[end]
std::swap(arr[start], arr[end]);
// 移动指针
start++;
end--;
}
}
int main() {
int arr[] = {1, 2, 3, 4, 5}; // 任意的一维整数数组
int n = sizeof(arr) / sizeof(arr[0]); // 获取数组长度
std::cout << "Original array: ";
for (int i : arr)
std::cout << i << " ";
reverseArray(arr, n);
std::cout << "\nReversed array: ";
for (int i : arr)
std::cout << i << " ";
return 0;
}
```
当你运行这个程序,原始数组会被逆序排列。
阅读全文