问题链接:HDU1563 Find your present!,HDU2095 find your present(2)。基础训练级的题,用C语言编写程序。
C语言中,异或运算符是“^”。因为a^a=0,那么要找出单独的数(唯一一个出现奇数次的数),只需要将所有的数进行异或运算即可。
AC的C语言程序如下:/* HDU1563 Find your present! */ #include <stdio.h> int main(void) { int n, v, ans; while(scanf("%d", &n) != EOF) { // 判定结束条件 if(n == 0) break; // 读入数据并计算 ans = 0; while(n--) { scanf("%d", &v); ans ^= v; } // 输出结果 printf("%d ", ans); } return 0; }