解题思路:
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语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:662 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:1027 |
明明的随机数 (C++代码)浏览:818 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:595 |
C二级辅导-进制转换 (C语言代码)浏览:514 |
奖学金 (C++代码)浏览:2008 |
矩形面积交 (Java代码)浏览:1222 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:619 |
C语言程序设计教程(第三版)课后习题9.3 (Java代码)浏览:966 |
Pascal三角 (C语言代码)格式错误浏览:521 |