P1980 计数问题

题目描述:试计算在区间 1 到 n的所有整数中,数字x(0x9)共出现了多少次?例如,在 111中,即在 1,2,3,4,5,6,7,8,9,10,11 中,数字 1 出现了 4 次。

输入格式:2个整数n,x,之间用一个空格隔开。

输出格式:1个整数,表示x出现的次数。

解析:使用for循环对逐个列出,在for循环中再使用循环对每个数取余,(目的是为了得到每个位上的数字)看是否与给的x一样,一样则计数器加一,直到所有都取出,

  即b=0,直到for循环结束,退出循环,输出count。

#include
int main()
{
    int x;
    int n,i;
    int b,c; //中转站
    int count = 0;  //计数器

   scanf("%d %d", &n, &x);

    for( i=1; i<=n; i++)
    {
       b = i;

       while( b!=0 )
       {
           c = b % 10;
           b /= 10;

         if( c==x )
           count++;
       }

    }

    printf("%d", count);

    return 0;
}

 

你可能感兴趣的:(P1980 计数问题)