题目:通过编程实现,统计1~n有多少个9
提示:n通过参数传入
例如输入12 输出1,判断有多少个9可以从8开始,两位数及其以上的需要求出每一位上的数然后和9取余。
程序如下:
#include <stdio.h>
int main()
{
int i,n;
int a,b;
int cnt=0;
printf("please enter an number:\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
a=i;
while(a>8) //直接判断大于8的就行
{
b=a%10; //取余9提出第一位
if(b==9)
cnt++;
a=a/10; //除10为了提出第二位
}
}
printf("%d\n",cnt);
return 0;
}