c语言怎么合并两个数组并去重

   2025-02-15 4790
核心提示:可以使用循环遍历的方法来合并两个数组并去重。具体步骤如下:定义两个数组arr1和arr2,分别存储需要合并的两个数组。定义一个新

可以使用循环遍历的方法来合并两个数组并去重。

具体步骤如下:

定义两个数组arr1和arr2,分别存储需要合并的两个数组。定义一个新的数组result,用于存储合并后的结果。遍历arr1数组,将其中的元素逐个添加到result数组中。遍历arr2数组,对于其中的每个元素,判断是否已经存在于result数组中,若不存在则添加到result数组中。合并完成后,result数组中即为合并并去重后的结果。

下面是使用C语言编写的示例代码:

#include <stdio.h>int main() {    int arr1[] = {1, 2, 3, 4};    int arr2[] = {3, 4, 5, 6};    int len1 = sizeof(arr1) / sizeof(arr1[0]);    int len2 = sizeof(arr2) / sizeof(arr2[0]);    int result[100];  // 假设合并后的数组最大长度为100    int len = 0;  // 合并后的数组长度    // 将arr1数组的元素添加到result数组中    for (int i = 0; i < len1; i++) {        result[len++] = arr1[i];    }    // 遍历arr2数组,将不重复的元素添加到result数组中    for (int i = 0; i < len2; i++) {        int exist = 0;  // 标记arr2当前元素是否已存在于result数组中        for (int j = 0; j < len; j++) {            if (arr2[i] == result[j]) {                exist = 1;                break;            }        }        if (!exist) {            result[len++] = arr2[i];        }    }    // 输出合并并去重后的数组    for (int i = 0; i < len; i++) {        printf("%d ", result[i]);    }    printf("\n");    return 0;}

以上代码的输出结果为:1 2 3 4 5 6,表示合并并去重后的数组。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言