一本书的页码从自然数1开始顺序编码直到自然数n。书的页码 按照通常的习惯编排,一个页码内都不包含多余的前导数字0.例如,第6页用数字6表示,而不是06或006等;数字计数问题要求给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1,……9.
这是一个效率比较低的算法。
#include<stdio.h>
#include<stdlib.h>
int main()
{
int array[10];
int num,i,j,temp;
for(i=0;i<10;i++)
{
array[i]=0;
}
printf("请输入页数!\n");
scanf("%d",&num);
for(i=num;i>0;i--)
{
temp=i;
while(temp)
{
array[temp%10]++;
temp /=10;
}
}
for(i=0;i<10;i++)
printf(