Digit Counting UVa1225

code:

#include<stdio.h>




int main()
{
    int T(0);
    scanf("%d", &T);
    while(T--)
    {
        int number[10] = {0};
        int N(0);
        scanf("%d", &N);
        int i = 1;
        for(; i <= N; i++)
        {
            int temp = i;
            while(temp)
            {
                number[temp%10]++;
                temp /= 10;
            }
        }
        int first = 1;
        for( i = 0; i < 10; i++)
        {
            if( first ) first = 0;
            else printf(" ");
            printf("%d",number[i]);
        }
        putchar('\n');
    }
    return 0;
}
  1. 从1开始一直判断到N,把每一个数字的每一个数位都在数组对应的位置计数,最后读出每一个数即可。
posted @ 2018-08-03 16:04  ClarkQian  阅读(100)  评论(0编辑  收藏  举报