基本思想

思想很简单,我们需要一个临时数组,存放首数据,将尾数据覆盖到首数据时,在将临时数组赋值给尾数据(临时数组就是首数据),再设置一个循环,达到逆置的效果。
一个常用的循环结束条件时:当尾数据下标小于首数据下标时(start > end),证明整个数组已经交换过了,及结束循环。

代码实现

#include <iostream>

using namespace std;

int main()
{
    int arr[5] = {1, 2, 3, 4, 5};

    int strat = 0;
    int end = sizeof(arr) / sizeof(arr[0]) - 1;

    while(strat < end){
        int temp = arr[strat];
        arr[strat] = arr[end];
        arr[end] = temp;

        strat++;
        end--;
    }
    
    for(int i = 0; i < 5; i++){
        cout << arr[i] << ' ';
    }
}