问题描述:
两个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("%dn",count); return 0; }
结果是:7
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/606758.html