题目
假设页面从1开始连续编号,一共1000页。计算所有页码中的十进制数字的总个数
这题很简单,就是求0~9出现次数的总和
public class text3 {
/*
* 0~9为十进制数字,本题要求为统计1~1000中出现的十进制数字总数。
*
* 分析: 对于1~1000------个位数的个数为1000-0=1000个
* 对于1~1000------十位数的个数为1000-9=991个
* 对于1~1000------百位数的个数为1000-99=901个
* 对于1~1000------千位数的个数为1000-999=1个
*
*只需统计各个位上的个数即可
* 设n为输入总数,i表示位数,j表示i位数的总个数(j=pow(10,i)-1;)
* */
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(), number = n, item = 0;
while (number > 0) {
number /= 10;
item++;
}
number = 0;
for (int i = 0; i < item; i++) {
int j = (int) Math.pow(10, i) - 1;
number = number + (n - j);
}
System.out.println(number);
}
}