题解 | #两个整数二进制位不同个数#
两个整数二进制位不同个数
https://www.nowcoder.com/practice/16e48900851646c0b2c6cdef9d7ea051
#include <stdio.h>
int count_different_bits(int num1, int num2) {
int count = 0;
int xor_result = num1 ^ num2; // 使用异或操作得到不同的位
// 计算不同位的数量
while (xor_result) {
count += xor_result & 1; // 如果最低位为1,则计数加1
xor_result >>= 1; // 向右移动一位,检查下一位
}
return count;
}
int main() {
int num1, num2;
scanf("%d %d", &num1, &num2);
int different_bits = count_different_bits(num1, num2);
printf("%d\n", different_bits);
return 0;
}

OPPO公司福利 1210人发布