zangyuanan320的博客

Keep Dreaming!!

【C语言】【笔试题】找出一组数据中成单出现的数字,其他所有数字都是成对出现的。(移位)

#include<stdio.h>
#include<stdlib.h>
int main()
{
	int i = 0;
	int num= 0;
	int arr[7];
	for (; i < 7; i++)
	{
		scanf("%d", &arr[i]);
	}
	num = arr[0];
	for (i = 1; i < 7; i++)
	{
		num = num^arr[i];//a异或b之后再异或b,结果是a等同于(a^b)^b=a,同样,(a^b)^a=b,因为a^a(自身异或自身)就等于0000....0000,再异或别的数,就只剩下再次异或的数了.
	}
	printf("%d\n", num);
	system("pause");
	return 0;
}


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zangyuanan320/article/details/51538024
个人分类: C语言
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭