int arr[9] = { 1, 2, 3, 4, 5, 4, 3, 2, 1};
int i = 0;
int num = 0;
for (i = 0; i < 9; i++)
{
num ^= arr[i];
}
printf("%d\n", num);
亦或( ^ )的作用是位运算时,相同为0,相异为1。
则1 ^ 1 == 0;
2 ^ 2 == 0;
3 ^ 3 == 0;
4 ^ 4 == 0;
……
num ^ 5 = 5;
最终留下的即未成对出现的数字