【PTA浙大版《C语言程序设计(第4版)》编程题】练习7-4 找出不是两个数组共有的元素(附测试点)

目录

输入格式:

输出格式:

输入样例:

输出样例:

代码呈现

测试点


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

输入格式:

输入分别在两行中给出两个整型数组,每行先给出正整数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

代码呈现

//C语言
#include <stdio.h>

int main()
{
	// 目标数组 
	int a1[20] = { 0 };
	// 目标数组
	int a2[20] = { 0 };
	// 临时数组
	int a3[20] = { 0 };
	
	// 分别表示两个数组的长度(元素个数)
	int n, m;
	
	// 先输入的表示 a1 的长度,然后输入目标数组 a1 的每个元素
	scanf("%d", &n);
	for (int i = 0; i < n; i++)
	{
		scanf("%d", &a1[i]);
	}
	
	// 先输入的表示 a2 的长度,然后输入目标数组 a2 的每个元素
	scanf("%d", &m);
	for (int i = 0; i < m; i++)
	{
		scanf("%d", &a2[i]);
	}
	
	// k 为临时数组的索引
	int k = 0;
	for (int i = 0; i < n; i++)
	{
		// flag表示假设当前元素在另一个数组中不出现
		int flag = 1;

		for (int j = 0; j < m; j++)
		{
			// 如果找到相同的元素,就将 flag 置为 0 ,假设不成立
			if (a1[i] == a2[j])
			{
				flag = 0;
			}
		}
		
		// 如果假设成功,就将当前元素放入临时数组
		if (flag) a3[k ++] = a1[i];
	}

	for (int i = 0; i < m; i++)
	{
		int flag = 1;

		for (int j = 0; j < n; j++)
		{
			if (a2[i] == a1[j])
			{
				flag = 0;
			}
		}

		if (flag) a3[k++] = a2[i];
	}
	
	// 打印临时数组的数据,重复的只打印一次
	for (int i = 0; i < k; i++)
	{
		int flag = 1;
		
		// 向前寻找看有没有相同元素
		for (int j = 0; j < i; j++)
		{
			// 有就将 flag 置为 0 ,后面的 if 就不进去 
			if (a3[i] == a3[j])
			{
				flag = 0;
			}
		}
		
		// 如果 flag 为 1 ,说明当前的元素没有重复,进入 if
		if (flag)
		{
			// 控制输入格式,题目会检查
			if (!i)
			{
				// 如果是第一个元素就不打印空格
				printf("%d", a3[i]);
			}
			else
			{
				// 将空格往前打印,因为最后不能有空格
				printf(" %d", a3[i]);
			}
		}
	}

	return 0;
}

测试点​​​v

最近更新

  1. TCP协议是安全的吗?

    2024-02-04 03:38:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-04 03:38:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-04 03:38:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-04 03:38:03       20 阅读

热门阅读

  1. 算法博弈论

    2024-02-04 03:38:03       27 阅读
  2. 软件安装-Linux搭建redis(单机版)

    2024-02-04 03:38:03       31 阅读
  3. 贪心算法中关于重叠区间问题的感悟

    2024-02-04 03:38:03       31 阅读
  4. 码农也得“开口说话”

    2024-02-04 03:38:03       35 阅读
  5. 建立数据库连接时出错

    2024-02-04 03:38:03       35 阅读
  6. 在 WSL Ubuntu 中安装 SSH 服务器,ssh连接wsl

    2024-02-04 03:38:03       24 阅读
  7. 假期作业2

    2024-02-04 03:38:03       27 阅读