判断区间内某个数字出现的次数

在区间1到n的所以整数中,数字x(0≤x≤9)出现了几次,如x=1时,输入11的话,1出现了俩次

#include<stdio.h>
int main() {
    int i,n,x,s=0,t;
    scanf("%d %d",&n,&x);
    for(i=1;i<n;i++){
        t=i;
        while(t!=0){
            if(t%10==x){
                s++;
            }
            t/=10;
        }
    }
    printf("%d",s);
    return 0;
}

int contain_number(int num,int a)
{
    int c=0;
    while(num)
    {
        if(num%10==a)
        {
            ++c;
        }
        num/=10;
    }
    return c;
}

int main()
{
    int x,n;
    scanf("%d %d",&x,&n);
    
    int sum=0;
    for(int i=1;i<n;++i)
    {
        sum += contain_number(i,x);
    }
    
    printf("%d\n",sum);
    
    
    return 0;
}