题解 | #求int型正整数在内存中存储时1的个数#

求int型正整数在内存中存储时1的个数

http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9

C++——简单易懂位运算
例如,5的二进制形式为:1001
用1来 & 1001,判断完一位二进制位,目标二进制数就往右移,依次判断完。

代码如下:

#include<iostream>
using namespace std;

int main(){
    int a;
    cin>>a;
    int count=0;
    while(a != 0){
        if(a & 1 ==1) count++;            
        a = a>>1;//a右移1位(溢出最右边的,判断左边移过来的是否是1)
    }
    cout<<count;
    return 0;
}
全部评论

相关推荐

请问三天没被捞是不是就是挂了,流程也结束了
我真的是钛材料:我也还没捞,但是还在筛选中,什么时候是个头啊
点赞 评论 收藏
分享
头像
02-26 13:58
门头沟学院 Java
北城_阿亮:把八股背一背,包装一下实习经历项目经历,要是有心思考证就考一考,然后把别人的项目爬到自己github上,包装到简历里,什么三个月?一个月!
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务