学习软件工程专业的学生在大一会遇到对数字的个十百千万位分别进行操作的题目
例如会 让你求从1到2021有多少个2?
我们可以采用分解数字的思想来解决这种问题,代码如下,自己领悟才更加通透,细细体会你就会发现自己受益匪浅
#include <stdio.h>
int main() {
int i,j,k,sum=0;
for(i=0;i<=2021;i++)
{
for(j=i;j>0;j=j/10)//将数字个十百千位逐一分解
{
k=j%10;//找到数字的末位
if(k==2)//判断数字末位是否为2
{sum++;
}}
}
printf("%d\n",sum);
}