练习7-4 找出不是两个数组共有的元素(20 分) 给定两个整型数组,本题要求找出不是两者共有的元素。

原创 2018年04月17日 17:03:07
可能比较麻烦,用第3个数组c来存放不同的元素,再在c中遍历,排除c本身中本身重复的元素。如有更简便的办法欢迎留言谢谢
/*练习7-4 找出不是两个数组共有的元素(20 分)
给定两个整型数组,本题要求找出不是两者共有的元素。
输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。
在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。
题目保证至少存在一个这样的数字。同一数字不重复输出。*/
#include<stdio.h>
int main(){
	int i,j,n1,n2,flag;
	int a[20];//={3,-5,2,8,0,3,5,-15,9,100};
	int b[20];//={6,4,8,2,6,-5,9,0,100,8,1};
	//输入a数组 
	scanf("%d",&n1);
	for(i=0;i<n1;i++){
		scanf("%d",&a[i]);
	}
	//输入b数组 
	scanf("%d",&n2);
	for(i=0;i<n2;i++){
		scanf("%d",&b[i]);
	}
	//找出a数组中和b不同的元素 
	int count=0,c[20];		//把不同的元素放到c数组里,count表示c数组中元素的个数 
	for(j=0;j<n1;j++){
		flag=0;
		for(i=0;i<n2;i++){
			if(a[j]==b[i]) flag=1;
		}
		if(flag==0) {		//------>28-39行:排除c数组中重复的元素 
			int h,flag1=0;
			for(h=0;h<=count;h++){
				if (c[h]==a[j]){
					flag1=1;
				}
			}
			if(flag1==0){
				c[count]=a[j];
				count++;
			}
		}					//------>28-39行:排除c数组中重复的元素 
	}
	//找出b数组中和a不同的元素 
	for(j=0;j<n2;j++){
		flag=0;
		for(i=0;i<n1;i++){
			if(b[j]==a[i]) flag=1;
		}
		if(flag==0) {		//------>47-60行:排除c数组中重复的元素 
			if(flag==0) {
			int h,flag1=0;
			for(h=0;h<=count;h++){
				if (c[h]==b[j]){
					flag1=1;
				}
			}
			if(flag1==0){
				c[count]=b[j];
				count++;
			}
		}
		}					//------>47-60行:排除c数组中重复的元素
	}
	//输出c数组 
	for(i=0;i<count;i++){
		printf("%d",c[i]);
		if(i!=count-1) printf(" ");
	}
	
	return 0;
}

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

数组-06. 找出不是两个数组共有的元素(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B ...
  • NOKIA_LC
  • NOKIA_LC
  • 2015-04-26 12:34:58
  • 8997

《C/C++/Java/Pascal 程序设计基础》习题集 解题3

数组-03. 冒泡法排序(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 徐镜春(...
  • wyh7280
  • wyh7280
  • 2015-07-29 18:00:27
  • 1548

【查找】找出两个数组共同拥有的元素

题目:EPI  13.5 当n≈m时,时间复杂度O(n+m) //n≈m vector intersect_array1(const vector &A,const vector &B) { v...
  • bupt8846
  • bupt8846
  • 2015-01-14 16:58:28
  • 1246

cccc分组赛

7-1 后天(5 分) 如果今天是星期三,后天就是星期五;如果今天是星期六,后天就是星期一。我们用数字1到7对应星期一到星期日。给定某一天,请你输出那天的“后天”是星期几。 输...
  • qq_40379678
  • qq_40379678
  • 2018-03-17 18:57:45
  • 90

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

给定两个整型数组,本题要求找出不是两者共有的元素。输入格式:输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。输出格式:在一行中按照数字给出的顺序输出不是...
  • wzy_2017
  • wzy_2017
  • 2018-03-14 21:51:12
  • 44

pta 习题集 5-2 找出不是两个数组共有的元素 (5分)

给定两个整型数组,本题要求找出不是两者共有的元素。 输入格式: 输入分别在两行中给出两个整型数组,每行先给出正整数NN(≤20≤20),随后是NN个整数,其间以空格分隔。  输出格式...
  • Dacc123
  • Dacc123
  • 2017-03-12 16:15:47
  • 808

安装VMware 7后光盘不能自动播放解决方案

打开虚拟机,选择  编辑--参数,在弹出对话框中选择 设备--去掉 禁止主机自动运行 前的勾。重启计算机,问题解决。...
  • Digital_Wings
  • Digital_Wings
  • 2011-01-09 17:02:00
  • 518

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

/* 时间:2018年4月6日16:19:16 思路:设置三个数组a[i],b[i], c[i]存储初数组元素; 依次找出a[i]中不同于b[i]的元素存储在c[i]中,和b[i]中不同于...
  • AA11224488
  • AA11224488
  • 2018-04-07 09:01:13
  • 42

求两个有序数组的共有元素

#include #include using namespace std; void overlap(int array1[], int n1, int array2[], int n2)...
  • u010525281
  • u010525281
  • 2016-04-15 20:13:14
  • 1085

5-5 表格输出 (5分)

#include #include #include #include #include #include #include using namespace std; int main() { ...
  • acmmiao
  • acmmiao
  • 2016-05-23 21:59:06
  • 586
收藏助手
不良信息举报
您举报文章:练习7-4 找出不是两个数组共有的元素(20 分) 给定两个整型数组,本题要求找出不是两者共有的元素。
举报原因:
原因补充:

(最多只允许输入30个字)