题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
//用的是数据结构对10进制转换为2进制的思路,利用累除2的方式:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num=in.nextInt();
int res=0;
while(num>0){
if(num%2==1){//模2=1则当前位置为1,否则为0(这里不管=0的情况)
res++;
}
num/=2;//模的同时得到除之后的整数部分,以做下一次运算
}
System.out.println(res);
}
}
