一个很神奇的算法,有多少个不同位,就循环多少次。
#define _CRT_SECURE_NO_WARNINGS 1 #includeint main() { int num1 = 0; int num2 = 0; int Temp = 0; int count = 0; printf("请输入两个数来比较他们二进制码不同位的个数:n"); scanf("%d %d", &num1, &num2); Temp = num1 ^ num2; while (Temp != 0) { count++; Temp = Temp & (Temp - 1); } printf("二进制码不同位的个数为:%dn", count); return 0; }



