首页 > 其他 > 详细

统计两整数中不同位数

时间:2015-11-10 01:43:34      阅读:168      评论:0      收藏:0      [点我收藏+]

两个int(32位)整数m和n的二进制表达式中,求有多少不同位数

#include<stdio.h>
#include<stdlib.h>

int number_of_one(int num)//计算一个二进制数中1的个数
{
	int i = 0;
	int key = 0;
	for (i = 0; i < 32; i++)
	{
		key += num & 0x00000001;
		num >>= 1;
	}
	return key;
}
int main()
{
	int m = 0;
	int n = 0;
	int apple = 0;
	int ret;
	printf("请输入两个比较的数:\n");
	scanf("%d %d", &m, &n);
	apple = m^n;
	ret=number_of_one(apple);
	
	printf("共有%d个1\n", ret);
	system("pause");
	return 0;
}

计算一个二进制中数的个数函数

int number_of_one(int num)
{
	int i = 0;
	int n = 0;
	for (i = 0; i < 32; i++)
	{
		n += num & 0x00000001;
		num >>= 1;
	}
	return n;
}


本文出自 “无以伦比的暖阳” 博客,请务必保留此出处http://10797127.blog.51cto.com/10787127/1711251

统计两整数中不同位数

原文:http://10797127.blog.51cto.com/10787127/1711251

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!