杭电oj 2034 人见人爱A-B C语言

此处的c和a指向同一块内存空间,改变c就是改变a,反之亦然,此处是为了方便看这么写的,如果不想c和a指向同一空间请分别开辟空间(即不如此写c=a=malloc)

cs 复制代码
#include<stdio.h>
#include<stdlib.h>

int com( const void* c1,const void* c2)
{
	return (*(int*)c1 - *(int*)c2);
}

void main()
{
	int n, m,*c, * a, * b,i,j,dst;
	while (~scanf_s("%d%d", &n, &m) && (n != 0 || m != 0))
	{
		c=a = (int*)malloc(n * sizeof(int)), b = (int*)malloc(m * sizeof(int)),dst=0;
		for (i = 0; i < n; i++)scanf_s("%d", a + i);
		for (i = 0; i < m; i++)scanf_s("%d", b + i);
		for (i = 0; i < n; i++)
		{
			for (j = 0; j < m; j++)
				if (a[i] == b[j])break;
			if (j == m)c[dst++] = a[i];
		}
		if (dst == 0)printf("NULL");
		else
		{
			qsort(c, dst, sizeof(int), com);
			for (i = 0; i < dst; i++)printf("%d ", c[i]);
		}
		printf("\n");
	}
}
相关推荐
Dovis(誓平步青云)几秒前
《QT学习第二篇:QT的常用控件属性与按钮、view系列、Label、输入框》
开发语言·qt·学习
lxh0113几秒前
蜗牛排序题解
javascript·算法
胖咕噜的稞达鸭2 分钟前
C/C++动态内存管理,malloc,calloc,realloc的区别,动态内存中的错误汇总
c语言·开发语言·c++
charlie1145141912 分钟前
嵌入式C++教程实战之Linux下的单片机编程(6):从点亮第一盏LED开始 —— 我们为什么要用现代C++写STM32
linux·c语言·开发语言·c++·stm32·单片机
沐知全栈开发3 分钟前
Ruby 哈希(Hash)
开发语言
徒 花5 分钟前
Python知识学习03
开发语言·python·学习
我命由我123457 分钟前
Vue3 开发中,字符串中的 <br\> 标签被直接当作文本显示出来了,而不是被解析为 HTML 换行标签
开发语言·前端·javascript·vue.js·html·ecmascript·html5
运维行者_8 分钟前
MSP网络管理破局者:IPAM+SPM插件终结IP冲突与安全威胁
运维·服务器·开发语言·网络·安全·web安全·php
人间打气筒(Ada)8 分钟前
「码动四季·开源同行」go语言:如何处理 Go 错误异常与并发陷阱?
开发语言·后端·golang·defer·panic·errors·并发陷阱
wjcroom9 分钟前
电子python模拟出的一个完美风暴
开发语言·python·数学建模·物理学