//用于计算从0到某个数字n中用到(0,1,2,3,4,5,6,7,8,9)的个数
//使用前注意将数组a初始化为0,即每个数字出现的个数是0
void Count(int a[10],int n) //结果存在a数组中.其中a[0]存0的个数…
{
int i,m,b,l,p;
b=1;
l=0;
p=0;
while(n)
{
p=p*10+1;
m=n%10;
n=n/10;
for(i=0;i<m;i++)
a[i]+=b;
a[m]=a[m]+l+1;
for(i=0;i<10;i++)
a[i]+=n*b;
l=l+m*b;
b=b*10;
}
a[0]=a[0]-p;
}