编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同? 输入例子:1999 2299输出例子:7
今天我想通过操作符里的知识,通过简单的异或关系完成题面要求。
思路:将两个数异或,即可将相同位全部清0,不同位全部置1,然后只需统计出1的个数即可找到答案
代码如下(代码中有较为详细的注释):
#include<stdio.h>
#include<windows.h>
#pragma warning(disable: 4996);
int bin_diff_bit(int m, int n)
{

本文介绍了如何使用C语言编程解决求两个32位整数二进制表示中不同位的个数问题。通过异或操作,将相同位变为0,不同位变为1,然后计算1的个数,即可得到答案。提供了一段包含详细注释的代码示例。
627

被折叠的 条评论
为什么被折叠?



