C语言基础 写一个函数求a的二进制(补码)表示中有几个1

本文介绍如何使用C语言编写一个函数,该函数接收一个整数a,计算其二进制补码表示中1的个数。通过位操作技巧,可以高效地统计出1的个数,这对于理解位运算和算法设计具有重要意义。
摘要由CSDN通过智能技术生成
//写一个函数求a的二进制(补码)表示中有几个1
//方法一(道理同十进制%10,/10)
#include<stdio.h>
int count_bit_one(unsigned int i){
   //无符号整型数可以在输入负数的情况下也可以正确输出
	int count=0;//计数器
	while(i){
   //当i不等于0时
		if(i%2==1){
   //%2余1时表示这个位置有“1”的存在,计数器加一位进行计数
			count++;
		}
		i=i/2;//%2后/2改变原数字的大小,进行下一次运算
	}
return count;//返回整型的计数器记下的数字
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值