题解 | #查找输入整数二进制中1的个数#

查找输入整数二进制中1的个数

https://www.nowcoder.com/practice/1b46eb4cf3fa49b9965ac3c2c1caf5ad

#include <iostream>
using namespace std;

void caculate(int num){
    int cnt = 0;
    while(num != 0){
        if(num%2 == 1){
            cnt++;
        }
        num = num/2;
    }
    cout << cnt << endl;
}

int main() {
    int num;
    while(cin >> num){
        caculate(num);
    }
}
// 64 位输出请用 printf("%lld")

使用求余和触发,停止条件是 最后 1%2 = 1 1/2 = 0时,因为要计算最后一个1,所以是0的时候停下

华为机试刷题记录 文章被收录于专栏

记录一下手打代码的解题思路方便复习

全部评论

相关推荐

06-19 13:40
武汉大学 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客848095834号:举报了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务