解题思路:
public static String toBinaryString(int i):以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。 先转换为二进制,将每一个二进制存储到字符数组中,判断数组中是否含有1,有则累加。
注意事项:
参考代码:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int l = sc.nextInt(); int r = sc.nextInt(); int sum=0; for (int i = l; i <= r; i++) { String str=Integer.toBinaryString(i);//将范围内的每一个数字转换为二进制数放入字符串 char ch[]=str.toCharArray();//将转换后的二进制数字符串放入字符数组中循环遍历判断 for (int j = 0; j < ch.length; j++) { if (ch[j]=='1') { sum++;//含有1则累加 } } } System.out.println(sum); } }
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:901 |
简单的a+b (C语言代码)浏览:478 |
杨辉三角 (C语言代码)浏览:484 |
2^k进制数 (C语言描述,蓝桥杯)浏览:1420 |
1071题解浏览:487 |
简单的a+b (C语言代码)浏览:948 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1032 |
母牛的故事 (C语言代码)浏览:478 |
1250题解浏览:557 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:558 |