21xrx.com
2024-11-22 08:21:11 Friday
登录
文章检索 我的文章 写文章
C++如何交换两个数组
2023-07-05 12:15:02 深夜i     --     --
C++ 交换 数组

在C++中,要交换两个数组是非常简单的。可以使用循环或者STL库中的函数来实现。

首先,我们来看看使用循环实现交换两个数组的示例:


#include <iostream>

using namespace std;

int main()

{

  int arr1[] = 1;

  int arr2[] = 6;

  int size = sizeof(arr1) / sizeof(arr1[0]);

  for (int i = 0; i < size; i++)

  {

    int temp = arr1[i];

    arr1[i] = arr2[i];

    arr2[i] = temp;

  }

  cout << "arr1: ";

  for (int i = 0; i < size; i++)

  {

    cout << arr1[i] << " ";

  }

  cout << endl << "arr2: ";

  for (int i = 0; i < size; i++)

  {

    cout << arr2[i] << " ";

  }

  return 0;

}

输出结果为:


arr1: 4 5 6

arr2: 1 2 3

在上述代码中,我们首先定义了两个长度相同的数组arr1和arr2。然后,我们通过计算数组的大小,来确定需要遍历的次数。当我们遍历数组时,我们使用一个临时变量temp来交换数组元素的位置。最后,我们输出交换后的两个数组。

另外一种方式是使用STL库中的swap函数来实现。如下所示:


#include <iostream>

#include <algorithm>

using namespace std;

int main()

{

  int arr1[] = 3;

  int arr2[] = 4;

  int size = sizeof(arr1) / sizeof(arr1[0]);

  for (int i = 0; i < size; i++)

  {

    swap(arr1[i], arr2[i]);

  }

  cout << "arr1: ";

  for (int i = 0; i < size; i++)

  {

    cout << arr1[i] << " ";

  }

  cout << endl << "arr2: ";

  for (int i = 0; i < size; i++)

  {

    cout << arr2[i] << " ";

  }

  return 0;

}

输出结果为:


arr1: 4 5 6

arr2: 1 2 3

在上述代码中,我们首先定义了两个长度相同的数组arr1和arr2。然后,我们通过计算数组的大小,来确定需要遍历的次数。当我们遍历数组时,我们使用了STL库中的swap函数来交换数组元素的位置。最后,我们输出交换后的两个数组。

无论是使用循环还是STL库中的swap函数,交换两个数组的元素都是非常简单的。无论选择哪种方法,都可以达到目的,而且并不具有特别的局限性。

  
  

评论区

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