您的位置:首页 > 编程语言

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

2018-04-05 20:00 316 查看
我的思想:定义两个整形数字,对其逐位和1进行“&‘’运算,得出不同的bit位.

#pragma warning (disable:4996)
#include <stdio.h>
#include <stdlib.h>
void fun(int value1, int value2)
{
int count = 0;
int num = 0;
while (num<32)
{
if ((value1 & 1 )!=(value2  & 1))
{
count++;
}
value1 >>=1;
value2 >>=1;
num++;
}
printf("共有 %d 个bit位不同\n", count);
}
int main()
{
printf("请输入两个整形数字:\n");
int num1 = 0;
int num2 = 0;
scanf("%d,%d", &num1, &num2);
fun(num1, num2);
    system("pause");
    return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐