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


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

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

世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么?输入例子:1999 2299输出例子:7public class Solution...
  • qq_34692079
  • qq_34692079
  • 2016年04月17日 15:59
  • 1151

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

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

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

m和n的二进制表达中,有多少个位不同 三种方法
  • xiaobingRSQ
  • xiaobingRSQ
  • 2016年11月25日 00:19
  • 805

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

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

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

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

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

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

如何求整数A和B的二进制表示中有多少位不同?

我们一般的算法是将整数A与整数B转换为二进制数,然后通过移位操作来统计总共有多少位不同,现在我像大家介绍一种更加高效的算法。 int cal(int a, int b) { int M = a ^...
  • Wall_F
  • Wall_F
  • 2013年03月23日 18:26
  • 5287

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

#include #include int main () { int m = 0; int n = 0; int tmp = 0; int count = 0; printf("输入...
  • lhy553529
  • lhy553529
  • 2016年12月16日 19:15
  • 91

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

第一种: #include #include int main() {  int m,n,u;  int count=0;  scanf("%d%d",&m,&n);  u=m^n;  while(u...
  • youngyoungla
  • youngyoungla
  • 2016年06月12日 12:46
  • 115

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

int Compare(void) { printf("请输入两个整数:"); int num1 = 0; int num2 = 0; int ret = 0; ...
  • Tianzez
  • Tianzez
  • 2017年10月13日 19:53
  • 123
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【C语言】【笔试题】两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
举报原因:
原因补充:

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