数组-06. 找出不是两个数组共有的元素(20)

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

输入格式:

输入分别在2行中给出2个整型数组,每行先给出正整数N(<=20),随后是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 <iostream>
 2 #include <stdio.h>
 3 #include <math.h>
 4 #include <string>
 5 #include <stdlib.h>
 6 
 7 using namespace::std; 
 8 
 9 int main(){
10        int n1,n2;
11        int a[20],b[20];
12        int c[20];
13        
14        scanf("%d",&n1);
15        for(int i=0;i<n1;i++)
16        {
17            scanf("%d",&a[i]);
18        }
19        scanf("%d",&n2);
20        for(int i=0;i<n2;i++)
21        {
22            scanf("%d",&b[i]);
23        }
24        
25        
26        int k=0; 
27        for(int i=0;i<n1;i++)
28        {
29              int flag=0;
30              for(int j=0;j<n2;j++)
31              {
32                  if(a[i]==b[j])
33                  {
34                     flag=1;
35                  }
36              }
37              
38              if(flag==0)
39                  {
40                      c[k]=a[i];
41                      k++;
42                  }
43        }
44        
45        for(int i=0;i<n2;i++)
46        {
47              int flag=0;
48              for(int j=0;j<n1;j++)
49              {
50                  if(b[i]==a[j])
51                  {
52                     flag=1;
53                  }
54              }
55              
56              if(flag==0)
57                  {
58                      c[k]=b[i];
59                      k++;
60                  }
61        }
62        
63        int flag=0;
64        for(int i=0;i<k;i++)
65        { 
66            flag=0;
67              for(int j=0;j<k;j++)
68              {
69                  if(c[i]==c[j]&&i>j)
70                  {
71                      flag=1;
72                  }
73                  
74              }
75              
76              
77              if(flag==1)
78              {
79              }
80              else
81              {
82                  if(i!=0)printf(" ");
83                  printf("%d",c[i]);
84              }
85        }
86       return 0;
87 }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。