将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。用c++写
时间: 2024-10-16 15:21:39 浏览: 37
C语言程序设计-编写函数fun将一个数组中的值按逆序存放,并在main()函数中输出;
4星 · 用户满意度95%
在C++中,你可以使用两层循环来实现数组的逆序操作,也可以使用现代C++的算法库来简化过程。以下是两种简单的方法:
**手动遍历法:**
```cpp
#include <iostream>
void reverseArray(int arr[], int size) {
for (int i = 0; i < size / 2; i++) {
// 交换arr[i]和arr[size - i - 1]
std::swap(arr[i], arr[size - i - 1]);
}
}
int main() {
int arr[] = {8, 6, 5, 4, 1};
int size = sizeof(arr) / sizeof(arr[0]);
reverseArray(arr, size);
for (int i : arr) {
std::cout << i << " ";
}
std::cout << "\n"; // 输出:1 4 5 6 8
return 0;
}
```
**使用`std::reverse`函数:**
如果你的C++版本支持C++11及以上,并且允许使用STL,可以更简洁地使用`std::reverse`:
```cpp
#include <iostream>
#include <algorithm> // 包含reverse函数
int main() {
int arr[] = {8, 6, 5, 4, 1};
int size = sizeof(arr) / sizeof(arr[0]);
std::reverse(arr, arr + size); // 从头到尾逆序整个数组
for (int i : arr) {
std::cout << i << " ";
}
std::cout << "\n";
return 0;
}
```
阅读全文