#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; }
【C语言】【笔试题】找出一组数据中成单出现的数字,其他所有数字都是成对出现的。(移位)
原创安下 ©著作权
文章标签 C语言 一组数据中只有一个数字出现了一次。其他所 文章分类 C/C++ 后端开发
-
笔试面试成对出现的一组数,只有一个或两个只出现一次的数字,找到它们。
<笔试><面试>成对出现的一组数,只有一个(两个)只出现一次的数字,找到它(它们)。
面试 笔试 C/C++ 成对出现的一组数只有两个数出现一次 -
c语言:一组数据中只有一个数字出现了一次。(使用位运算)
c语言:一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
c语言:一组数据中只有一个数字出现了一次