c++ 一维数组逆序输出
时间: 2024-01-04 22:19:16 浏览: 268
以下是两种C++一维数组逆序输出的例子:
1. 使用for循环逆序输出数组元素:
```cpp
for (int i = n - 1; i >= 0; i--) {
cout << a[i] << " ";
}
```
2. 使用指针逆序输出数组元素:
```cpp
for (int* p = a + n - 1; p >= a; p--) {
cout << *p << " ";
}
```
相关问题
c++ vector一维数组 逆序
在 C++ 中,如果你有一个 `std::vector` 类型的一维数组,想要对其进行逆序操作,你可以使用标准库提供的算法或者直接迭代器进行操作。这里有两个简单的方法:
1. 使用 `std::reverse` 算法:
```cpp
#include <algorithm>
std::vector<int> vec = {1, 2, 3, 4, 5};
std::reverse(vec.begin(), vec.end());
```
这会将 `vec` 的元素从头到尾反转。
2. 遍历并交换元素:
```cpp
void reverseVector(std::vector<int>& vec) {
int left = 0;
int right = vec.size() - 1;
while (left < right) {
std::swap(vec[left], vec[right]);
left++;
right--;
}
}
```
然后调用这个函数:
```cpp
reverseVector(vec);
```
这两种方法都会改变原 `vector` 的顺序。
设计一个函数模板,将一维数组 逆序
好的,下面是一个将一维数组逆序的函数模板:
```c++
template <typename T, size_t N>
void reverseArray(T (&arr)[N]) {
for (size_t i = 0; i < N / 2; ++i) {
std::swap(arr[i], arr[N - i - 1]);
}
}
```
这个函数模板接受一个一维数组的引用作为参数,使用 `std::swap` 函数将数组中的元素逆序排列。由于数组的大小是在编译时就确定的,因此我们可以使用模板的非类型参数 `N` 表示数组的大小。
阅读全文