[C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。

简介: [C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。

1.

int main()
{
  int n = 0;
  int m = 0;
  scanf("%d %d", &m,&n);
  int count = 0;
  int i = 0;
  for (i = 0; i < 32; i++)
  {
    if (((m>>i) & 1) != ((n>>i) & 1))
    {
        count++;
    }
  }
  printf("%d\n", count);
  return 0;
}

2.

int main()
{
  int count = 0;
  int m = 0;
  int n = 0;
  scanf("%d %d", &m, &n);
  int ret = m ^ n;
  while(ret)
  {
    ret = ret & (ret - 1);
    count++;
  }
  printf("%d\n", count);
  return 0;
}


目录
相关文章
|
1月前
|
编译器 C语言
C语言中整数如何自动转换为浮点数
C语言中整数如何自动转换为浮点数
74 0
|
1月前
|
存储 C语言
C语言中如何选择合适的方式将整数转换为浮点数
C语言中如何选择合适的方式将整数转换为浮点数
123 0
|
1月前
|
存储 C语言
C语言实现二进制到十进制
C语言实现二进制到十进制
13 0
|
1月前
|
C语言
C语言刷题:整数加逗号、删除公共字符、求最小公倍数和将字符串倒置
C语言刷题:整数加逗号、删除公共字符、求最小公倍数和将字符串倒置
29 0
|
1月前
|
存储 编译器 C语言
c语言中int的作用和类型
c语言中int的作用和类型
28 0
|
1月前
|
存储 C语言
在C语言中编写,用于从键盘接收输入的整数并判断该数是否能被3整除
在C语言中编写,用于从键盘接收输入的整数并判断该数是否能被3整除
23 0
|
1月前
|
存储 C语言
十进制转二进制,C语言的必备技能
十进制转二进制,C语言的必备技能
|
1月前
|
存储 C语言
C语言十进制转二进制
C语言十进制转二进制
26 0
|
2月前
|
算法 搜索推荐 程序员
C语言第二十六练 实现罗马数字转整数
C语言第二十六练 实现罗马数字转整数
30 0
|
2月前
|
算法 搜索推荐 程序员
C语言十八练——整数按位取反
C语言十八练——整数按位取反
29 0