牛客网刷题 ——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;
}
相关推荐
黑客老李11 分钟前
BaseCTF scxml 详解
开发语言·网络·数据库·python·sql·安全
编程|诗人13 分钟前
Ruby语言的数据库编程
开发语言·后端·golang
SyntaxSage13 分钟前
Ruby语言的学习路线
开发语言·后端·golang
云端 架构师14 分钟前
Ruby语言的并发编程
开发语言·后端·golang
DevOpsDojo15 分钟前
Ruby语言的字符串处理
开发语言·后端·golang
Code花园24 分钟前
Scala语言的循环实现
开发语言·后端·golang
wjs202429 分钟前
AngularJS HTML DOM
开发语言
易雪寒1 小时前
Java大厂面试题之10种分布式ID的生成方案
java·开发语言·分布式
树不懒1 小时前
【js引擎】quickjs 中的两个 proto
开发语言·javascript·原型模式
明天不吃。1 小时前
【JMM】Java 内存模型
java·开发语言