21xrx.com
2024-12-22 16:45:11 Sunday
登录
文章检索 我的文章 写文章
C++如何将数组值逆序重新存放
2023-07-05 01:48:49 深夜i     --     --
C++ 数组值 逆序 重新存放

在C++中,我们经常会需要将数组中的数据按照逆序重新存放。这种操作通常用于排序算法中,或者在需要对数组进行反转操作时。

那么,C++中如何将数组值逆序重新存放呢?

首先,我们可以使用一个for循环来遍历数组元素,从数组的两端开始进行数据交换操作。

具体来说,我们可以定义两个指针,一个指向数组的第一个元素,另一个指向数组的最后一个元素。然后,我们可以使用一个while循环,一直进行交换操作,直到两个指针相遇为止。

代码如下:


void reverseArray(int arr[], int n){

  int start = 0, end = n-1;

  while(start < end){

    int temp = arr[start];

    arr[start] = arr[end];

    arr[end] = temp;

    start++;

    end--;

  }

}

上面的代码中,我们定义了一个reverseArray函数,它接受一个数组和数组的长度作为参数。然后,使用start和end两个指针分别指向数组的第一个元素和最后一个元素。

接下来,在while循环中,我们不断交换start和end指针所指向的元素,并向中间靠拢,直到两个指针相遇。这样,我们就可以将数组中的元素逆序重新存放了。

最后,我们可以在主函数中调用这个函数,来测试它的功能。

例如:


#include<iostream>

using namespace std;

void reverseArray(int arr[], int n){

  int start = 0, end = n-1;

  while(start < end){

    int temp = arr[start];

    arr[start] = arr[end];

    arr[end] = temp;

    start++;

    end--;

  }

}

int main(){

  int arr[] = 4;

  int n = sizeof(arr)/sizeof(arr[0]);

  cout<<"Original Array: ";

  for(int i=0; i<n; i++){

    cout<<arr[i]<<" ";

  }

  reverseArray(arr, n);

  cout<<"\nReversed Array: ";

  for(int i=0; i<n; i++){

    cout<<arr[i]<<" ";

  }

  return 0;

}

上面的代码中,我们定义了一个数组arr,接着,我们计算数组的长度n,然后使用for循环输出原始数组和逆序后的数组。

运行输出结果如下:


Original Array: 1 2 3 4 5

Reversed Array: 5 4 3 2 1

可以看出,我们成功地将数组的元素逆序重新存放了。

总的来说,C++中将数组值逆序重新存放是一个简单易行的操作,只需要使用两个指针来遍历数组元素,然后进行交换即可。掌握这个操作,在C++开发中能够为我们节省很多的代码工作量和时间。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复