YTU OJ 1701: 统计数字问题
题目描述 一本书的页码从自然数1 开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如,第6 页用数字6 表示,而不是06 或006 等。数字计数问题要求对给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1, 2,…,9。给定表示书的总页码的10 进制整数n (1≤n≤109) 。计算书的全部页码中分别用到多少次数字0,1,2,…,9。 输入 输入数据只有1 行,给出表示书的总页码的整数n。 输出 输出数据共有10行,在第k行输出页码中用到数字k-1 的次数,k=1,2,…,10。 样例输入 11 样例输出 1 4 1 1 1 1 1 1 1 1 代码如下: # include <stdio.h> # include <stdlib.h> # include <string.h> void deal ( int a [ ] , int i ) { int j = 0 ; while ( i != 0 ) { a [ i % 10 ] ++ ; i / = 10 ; } } int main ( ) { int a [ 10 ] = { 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } ; int i , n ; scanf ( "%d" , & n ) ; for ( i = 1 ; i <= n ;