实验7-1-4-一维数组 找出不是两个数组共有的元素 (20 分)

Posted nekonekomiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验7-1-4-一维数组 找出不是两个数组共有的元素 (20 分)相关的知识,希望对你有一定的参考价值。

给定两个整型数组,本题要求找出不是两者共有的元素。

输入格式:

输入分别在两行中给出两个整型数组,每行先给出正整数N(≤),随后是N个整数,其间以空格分隔。

输出格式:

在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。题目保证至少存在一个这样的数字。同一数字不重复输出。

输入样例:

10 3 -5 2 8 0 3 5 -15 9 100
11 6 4 8 2 6 -5 9 0 100 8 1

输出样例:

3 5 -15 6 4 1
 1 #include <stdio.h>
 2 int main()
 3 
 4     int one[30] =  0 ;
 5     int two[30] =  0 ;
 6     int three[30] =  12 ;
 7     int N,M,i,j,h,k=0;
 8     scanf("%d", &N);
 9     for (i = 0; i < N; i++) 
10         scanf("%d", &one[i]);
11     
12     scanf("%d", &M);
13     for (j = 0; j < M; j++) 
14         scanf("%d", &two[j]);
15     
16     int cnt = 0;
17     for (i = 0; i < N; i++) 
18         cnt = 0;
19         for (j = 0; j < M; j++) 
20             if (one[i] == two[j]) 
21                 cnt = 1;
22                 break;
23             
24         
25         if (cnt == 0) 
26             for (h = 0; h < k+1; h++) 
27                 if (three[h] == one[i]&&three[h]!=0) 
28                     cnt = 1;
29                 
30             
31             if (cnt == 0) 
32                 three[k] = one[i];
33                 k++;
34             
35         
36     
37     for (j = 0; j < M; j++) 
38         cnt = 0;
39         for (i = 0; i < N; i++) 
40             if (two[j] == one[i]) 
41                 cnt = 1;
42                 break;
43             
44         
45         if (cnt == 0) 
46             for (h = 0; h < k + 1; h++) 
47                 if (three[h] == two[j]&&three[h] != 0) 
48                     cnt = 1;
49                 
50             
51             if (cnt == 0) 
52                 three[k] = two[j];
53                 k++;
54             
55         
56     
57     for (h = 0; h < k - 1; h++) 
58         printf("%d ", three[h]);
59     
60     printf("%d", three[h]);
61     return 0;
62 
63 

第一次忽略了输出的数有0的情况,其与数组初始化为0冲突,改进了技术图片这行代码后能解决当three[h]等于零时造成的错误答案。

 

以上是关于实验7-1-4-一维数组 找出不是两个数组共有的元素 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

7-4 找出不是两个数组共有的元素(20 分)

[PTA]练习7-4 找出不是两个数组共有的元素

找出不是两个数组共有的元素

PTA -----找出不是两个数组共有的元素

找出数组 arr 中重复出现过的元素

编写程序,找出数组a中前n个元素中的最小元素及其下标