#include<stdio.h>
int main ()
{
int a = 0;
int b = 0;
int m = 0;
int i = 0;
int count = 0;
scanf_s("%d%d",&a,&b);
m=a^b;
for(i=31;i>=0;i--)
{
if(((m>>i)&1)==1)
{
count++;
}
}
printf("count=%d",count);
return 0;
}
int main ()
{
int a = 0;
int b = 0;
int m = 0;
int i = 0;
int count = 0;
scanf_s("%d%d",&a,&b);
m=a^b;
for(i=31;i>=0;i--)
{
if(((m>>i)&1)==1)
{
count++;
}
}
printf("count=%d",count);
return 0;
}
本文介绍了一个使用位运算解决的问题:计算两个整数的不同位数量。通过异或操作找到两数的二进制表示中不同的位,然后遍历每一位判断是否为1来计数。

441

被折叠的 条评论
为什么被折叠?



