当前位置:首页 > 编程笔记 > 正文
已解决

华为机试练习题:HJ15 求int型正整数在内存中存储时1的个数

来自网友在路上 193893提问 提问时间:2023-11-08 02:53:46阅读次数: 93

最佳答案 问答题库938位专家为你答疑解惑

1、完整题目

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

描述

输入一个 int 型的正整数,计算出该 int 型数据在内存中存储时 1 的个数。

数据范围:保证在 32 位整型数字范围内

输入描述:

 输入一个整数(int类型)

输出描述:

 这个数转换成2进制后,输出1的个数

示例1

输入:5

输出:2

示例2

输入:0

输出:0

2、Java代码

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextInt()) { // 注意 while 处理多个 caseint a = in.nextInt();int count = 0;//以下代码实现的就是十进制转二进制的过程while (a != 0) {if ((a & 1) == 1) { //如果a可对2整除,则计数器加1count++;}a >>= 1;//将a除以2}System.out.println(count);}}
}

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"华为机试练习题:HJ15 求int型正整数在内存中存储时1的个数":http://eshow365.cn/6-34983-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!