解题思路:
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语言代码)浏览:697 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:597 |
数组输出 (C语言代码)--此题的题目描述有问题浏览:1814 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:578 |
printf基础练习2 (C语言代码)浏览:740 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:1415 |
C语言训练-亲密数 (C语言代码)浏览:682 |
字符串比较 (C语言代码)浏览:679 |
C语言程序设计教程(第三版)课后习题12.2 (C语言代码)浏览:753 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1027 |