[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;
}


目录
打赏
0
0
1
0
2
分享
相关文章
【C语言】进制转换无难事:二进制、十进制、八进制与十六进制的全解析与实例
进制转换是计算机编程中常见的操作。在C语言中,了解如何在不同进制之间转换数据对于处理和显示数据非常重要。本文将详细介绍如何在二进制、十进制、八进制和十六进制之间进行转换。
241 5
|
10月前
|
【C语言刷题每日一题#牛客网BC6】输入三个整数,输出第二个整数
【C语言刷题每日一题#牛客网BC6】输入三个整数,输出第二个整数
【C语言刷题系列】求一个数组中两个元素a和b的和最接近整数m
【C语言刷题系列】求一个数组中两个元素a和b的和最接近整数m
|
10月前
|
【C语言刷题每日一题】——求1到100中包含数字9的整数的个数
【C语言刷题每日一题】——求1到100中包含数字9的整数的个数
|
10月前
|
【C语言刷题系列】交换整数的奇数位和偶数位
【C语言刷题系列】交换整数的奇数位和偶数位
【C语言进阶篇】整数在内存的存储——原码、反码、补码
【C语言进阶篇】整数在内存的存储——原码、反码、补码
|
10月前
|
【C语言刷题系列】计算整数的二进制位中1的个数 (三种方式)
【C语言刷题系列】计算整数的二进制位中1的个数 (三种方式)
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
185 23
一文彻底搞清楚C语言的函数
本文介绍C语言函数:函数是程序模块化的工具,由函数头和函数体组成,涵盖定义、调用、参数传递及声明等内容。值传递确保实参不受影响,函数声明增强代码可读性。君志所向,一往无前!
32 1
一文彻底搞清楚C语言的函数

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等