题:
#include<stdio.h>
int main()
{
int ans = 0,x,i;
for(i=1;i<=2020;i++)
{
x=i;
while(x)
{
if(x%10==2)
{
ans++;
}
x/=10;
}
}
printf("%d",ans);
return 0;
}
首先,一个for循环就是要把从1到2020所有的数都过一遍
for(i=1;i<=2020;i++)
{
x=i;
while(x)
{
if(x%10==2)
{
ans++;
}
x/=10;
}
}
printf("%d",ans);
其次,最关键的部分是:
if(x%10==2)
{
ans++;
}
x/=10;
在for循环内部,利用一个判断条件,来筛选我们要的条件——出现了数字2的(这一步就用x%10==2来实现筛选)
如果满足那么计数的变量ans就++,另外做完之后也要记得去位(x/=10)