C语言第四十弹---两个整数二进制位不同的个数

C语言求两个整数二进制位不同的个数

遍历法,使用循环获取每一位二进制位数,并让二进制位与1比较,如果相同则忽略,不同则个数增加。

c 复制代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main()
{
	int a = 0;
	int b = 0;
	int count = 0;
	scanf("%d %d",&a,&b);
	for (int i = 0; i < 32; i++)
	{
		if (((a >> i) & 1) != ((b >> i) & 1))//使用>>获取32为二进制位,分别与1比较,两者不证明不同
		{
			count++;
		}
	}

	printf("%d",count);
	return 0;
}

其中判断是否相等也可以使用(((a>>i)^(b>>i))==1)判断。

相关推荐
岁忧19 小时前
(LeetCode 每日一题) 3541. 找到频率最高的元音和辅音 (哈希表)
java·c++·算法·leetcode·go·散列表
懒大王952719 小时前
uni-app + Vue3 + EZUIKit.js 播放视频流
开发语言·javascript·uni-app
_extraordinary_19 小时前
Java 多线程进阶(四)-- 锁策略,CAS,synchronized的原理,JUC当中常见的类
java·开发语言
pusue_the_sun19 小时前
每日算法题推送
算法·双指针
JasmineX-119 小时前
数据结构——顺序表(c语言笔记)
c语言·开发语言·数据结构·笔记
KyollBM19 小时前
【Luogu】P9809 [SHOI2006] 作业 Homework (根号算法)
算法
jmxwzy19 小时前
leetcode274.H指数
算法
java搬砖工-苤-初心不变20 小时前
OpenResty 配合 Lua 脚本的使用
开发语言·lua·openresty
IT灰猫20 小时前
C++轻量级配置管理器升级版
开发语言·c++·设计模式·配置管理·ini解析
纪元A梦20 小时前
贪心算法应用:信用评分分箱问题详解
java·算法·贪心算法