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

原创 2016年05月30日 15:01:58
#include <stdio.h>
#include <stdlib.h>
int main()
{
	int i = 0;
	int x = 1999;
	int y = 2299;
	int count = 0;
	for (i = 0; i < 32; i++)
	{
		if ((x % 2) ^ (y % 2) == 1)
		{
			count++;
		}
			x /=  2;
			y /= 2;
	}
	printf("%d\n", count);
	system("pause");
	return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

两个int整数m和n的二进制表达有多少个位不同

题目描述世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么? 输入例子: 1999 2299 输出例子: 7题目分析二进制中...
  • tule528
  • tule528
  • 2015年05月07日 22:06
  • 1672

世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么? 输入例子: 1999 2299 输出例子: 7

这是小米2015年暑假实习生第一道笔试题,其实不难,主要用到移位操作和或运算符就可以搞定,具体代码如下: /*世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达...

编程实现: 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?

m和n的二进制表达中,有多少个位不同 三种方法

1.编程实现: 两个int(32位)整数m和n的二进制表达中, 有多少个位(bit)不同? 输入例子: 1999 2299 输出例子:7

方法一: 算法思想:由于要找两个数对应不同比特位的个数,可以先将两个数按位异或,然后再统计异或后的数中的一的个数,而统计二进制中1的个数有三种方法;1.这个数循环按位 于比它小1的数,直到这个数为...

预处理标识符(两个int整数m和n的二进制表达中,有多少个位(bit)不同)

常用的预处理标识符有很多,以下是几个预定义标识符: (1)__FILE__ :表示正在编译的文件 (2) __LINE__:表示的是正在编译的文件的行号 (3)__DATE__:表示的是正在编译的日期...

【C】写一个宏将一个数字的奇数位和偶数位交换。实现两个int(32位)整数m和n的二进制表达中,位(bit)不同的个数

1.写一个宏将一个数字的奇数位和偶数位交换。 #define _CRT_SECURE_NO_WARNINGS 1 #include #define CHANGE(X) \ ((X & (0x55...

位运算笔试练习——判断两个整数(32位)的二进制表达有多少个位不同?

实习生笔试题 问题引入1、二进制表达方式——位运算 2、有多少位不同——好像只能一位一位的取比较 3、如何取得一个数的每一位呢? 4、比较完一位之后,能否把这一位去掉,比较剩下的,然后重复整个...

【C语言】2.编写函数 unsigned int reverse_bit(unsigned int value); 这个函数的返回 值value的二进制位模式从左到右翻转后的值。 如在32位机器上2

*2.编写函数 unsigned int reverse_bit(unsigned int value); 这个函数的返回 值value的二进制位模式从左到右翻转后的值。 如在32位机器上25这个值...
  • ybixiao
  • ybixiao
  • 2015年04月14日 20:03
  • 619

Pace 6 (1.写一个函数返回参数二进制中 1 的个数;2..获取一个数二进制序列中所有的偶数位和奇数位;3. 输出一个整数的每一位;4.两个int整数的二进制表达中,有多少个位不同

//1.写一个函数返回参数二进制中 1 的个数 #include int count_one_bits(unsigned int value) { int count = 0; while (...
  • J4Ya_
  • J4Ya_
  • 2017年10月26日 21:55
  • 40

输入整数m,n,判断需要改变二进制中多少位才能使其相等

之前有碰到过给我一个整数,统计其二进制中1的个数。说来忏愧,我开始是用递归调用除2取余,判断余数,如果是1,count++,否则,count不变。尽管是实现了功能,但是效率肯定是不高的,毕竟我还用了递...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【C语言】【笔试题】两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
举报原因:
原因补充:

(最多只允许输入30个字)