//寻找单独出现的数 //一组数中,有一个单独出现的数 其他数都是成对出现 //根据异或规则,相同的数异或为零,零跟任何一个整数异或值不变 // 不管几个数 相同的最后到最后就是零 // 1 2 3 1 3=====> 1 1 3 3 2====>2 #includeint AppearOnce(int *a, int n); int main() { int t, n; scanf("%d", &t); while(t--) { scanf("%d", &n); //动态申请存放n个整形数的数组 int *a = (int *)malloc(sizeof(int) * n); for(int i = 0; i < n; i++) scanf("%d", &a[i]); int onceNum = AppearOnce(a, n); printf("%dn", OnceNum); free(a); } return 0; } int AppearOnce(int *a, int n) { int num = 0; for(int i = 0; i < n; i++) { num ^= a[i]; printf("%d ", num); } return num; }



