C语言中,如何将一个一维数组和另一个一维数组合并在一个数组中?
1条回答 默认 最新
关注在C语言中,你可以通过将两个数组的元素复制到一个新的数组中来合并两个数组。以下是一个简单的示例:
#include <stdio.h> int main() { int arr1[] = {1, 2, 3, 4, 5}; // 第一个数组 int arr2[] = {6, 7, 8, 9, 10}; // 第二个数组 int arr3[10]; // 用于存储合并后的数组 int len1 = sizeof(arr1) / sizeof(arr1[0]); // 第一个数组的长度 int len2 = sizeof(arr2) / sizeof(arr2[0]); // 第二个数组的长度 int len3 = len1 + len2; // 合并后的数组的长度 // 将arr1的元素复制到arr3中 for (int i = 0; i < len1; i++) { arr3[i] = arr1[i]; } // 将arr2的元素复制到arr3中 for (int i = 0; i < len2; i++) { arr3[i + len1] = arr2[i]; } // 打印合并后的数组 for (int i = 0; i < len3; i++) { printf("%d ", arr3[i]); } return 0; }这个程序首先定义了两个数组
arr1和arr2,然后定义了一个新的数组arr3来存储合并后的结果。然后,我们计算了两个输入数组的长度,并将arr1的元素复制到arr3中。接着,我们将arr2的元素复制到arr3的相应位置。最后,我们打印合并后的数组。请注意,如果两个输入数组有相同的元素,那么
arr2的元素将会覆盖arr1的相应元素。如果你希望避免这种情况,那么在将元素复制到新数组之前,你可能需要做一些额外的检查。解决 无用评论 打赏 举报