派筹生活圈
欢迎来到派筹生活圈,了解生活趣事来这就对了

首页 > 综合百科 正文

c语言把两个数组合并成一个数组(用C语言实现合并两个数组为一个数组)

零距离╰ 羙感 2024-01-10 12:20:14 综合百科869

用C语言实现合并两个数组为一个数组

数组的合并

在C语言中,数组是一组固定大小的数据项组成的集合,数组的元素类型必须相同,因此如果要合并两个数组,必须满足以下条件:

  • 两个数组元素类型相同
  • 两个数组大小之和不大于系统内存大小

假设我们有两个整数数组,分别是arr1和arr2:

    int arr1[] = {1, 2, 3, 4, 5};
    int arr2[] = {6, 7, 8, 9, 10};

我们需要把这两个数组合并成一个数组arr3:

    int arr3[10];

实现思路

通过循环遍历arr1和arr2数组,依次将它们的元素存入数组arr3中即可实现数组的合并。

具体实现步骤如下所示:

  • 创建一个新数组arr3,其大小为arr1和arr2的大小之和。
  • 将arr1和arr2的元素依次存入arr3中。
  • 输出新数组arr3。

示例代码

    #include <stdio.h>
    #define SIZE1 5
    #define SIZE2 5
    #define SIZE3 (SIZE1 + SIZE2)
    
    int main() {
        int arr1[] = {1, 2, 3, 4, 5};
        int arr2[] = {6, 7, 8, 9, 10};
        int arr3[SIZE3];
        int i, j, k;
        
        for (i = 0; i < SIZE1; i++) {
            arr3[i] = arr1[i];
        }
        for (j = 0, k = i; j < SIZE2; j++, k++) {
            arr3[k] = arr2[j];
        }
        printf(\"The merged array is: \
\");
        for (i = 0; i < SIZE3; i++) {
            printf(\"%d \", arr3[i]);
        }
        printf(\"\
\");
        
        return 0;
    }

上面代码会输出以下结果:

    The merged array is:
    1 2 3 4 5 6 7 8 9 10

总结

数组的合并是一个基本的操作,在实际应用中经常被使用。通过C语言实现两个数组的合并,可以让我们更好地理解数组的存储和遍历方式。当然,我们还可以使用更高效的算法来实现数组合并操作,例如使用动态数组等数据结构。

猜你喜欢