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

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

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

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a=in.nextInt();
        int cout=0;
        while(a>0){
            if(a%2!=0)cout++;
            a=a/2;
        }
        System.out.print(cout);
        
    }
}

定义一个int变量去接受传递的数字,然后定义一个int变量的计数器

十进制转化为二进制有多少1,只需要看十进制余2为1还是0即可,每次除完看余数,在用商接着运算

while(a>0){

if(a%2!=0)cout++;

a=a/2;

}

最后输出

System.out.print(cout);

#华为od题库#
华为OD笔试库讲解,JAVA版 文章被收录于专栏

随便发发而已

全部评论

相关推荐

躺尸修仙中:因为很多92的也去卷中小厂,反正投递简历不要钱,面试不要钱,时间冲突就推,不冲突就面试积累经验
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务