牛客网刷题 ——C语言初阶(5操作符)——OR76 两个整数二进制位不同个数

1. 牛客网题目:OR76 两个整数二进制位不同个数

牛客网OJ链接

描述:

输入两个整数,求两个整数二进制格式有多少个位不同

输入描述:两个整数

输出描述:二进制不同位的个数

示例1

输入:22 33

输出:5

2.思路

不同的个数,想起来咱操作符有一个异或,相同为0 ,相异为1 ,让两个二进制数,异或,得到的二进制结果求其中1的个数,就是不同位的个数。

3. 代码实现

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

int main() {
   	int a = 0; 
	int b = 0;
	int count = 0;
	while (scanf("%d %d", &a, &b) != EOF)
	{
		int c = 0;
		c = a ^ b;
		int i = 0;
		
		for (i = 0; i < 32; i++) 
		{
			if (c & (1 << i))
			{
				count++;
			}
		}
	}
	
	printf("%d ", count);
    return 0;
}
相关推荐
qq_416018721 天前
设计模式在C++中的实现
开发语言·c++·算法
Evand J1 天前
【MATLAB教程】在matlab中,gscatter和scatter两个命令的区别
开发语言·matlab·教程·绘图·命令·教学
2301_776508721 天前
C++与机器学习框架
开发语言·c++·算法
Albertbreak1 天前
STL容器内部实现剖析
开发语言·c++·算法
2301_795741791 天前
模板编译期机器学习
开发语言·c++·算法
qq_416018721 天前
模板错误消息优化
开发语言·c++·算法
杰克尼1 天前
知识点总结--02(java基础部分)
java·开发语言·jvm
Sunshine for you1 天前
C++中的对象池模式
开发语言·c++·算法
暮冬-  Gentle°1 天前
编译器优化屏障使用
开发语言·c++·算法
华科大胡子1 天前
此电脑网络位置异常的AD域排错指南
开发语言·php