C语言实现之比较两数有多少位不同
程序员文章站
2022-03-26 09:26:49
问题描述:
两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
输入例子:
1999 2299
输出例子:7
代码实现:
#include <...
问题描述:
两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
输入例子:
1999 2299
输出例子:7
代码实现:
#include <stdio.h> int main() { int m=1999;//011111001111 int n=2299;//100011111011 int c=m^n; //111100110100 int count=0; while (c) { if(c%2==1) { count++; } else { ; } c=c>>1; } printf("%d\n",count); return 0; }
结果是:7
下一篇: 微信授权登陆