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

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

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

#include <stdio.h>

int main() {
    int n;
    scanf("%d",&n);
    int flag=1;
    int count=0;
    while(n>0)
    {
        if(flag*2>=n)
        {
            n=n-flag;
            count++;
            while(flag>n)
            {
                flag=flag/2;
            }
            continue;
        }
        flag=flag*2;
    }
    printf("%d",count);
}

全部评论

相关推荐

魔法恐龙:这真得给个机会,面试的时候问问不吃饭78.5h怎么做到的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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