题目:小明对数位中含有2、0、1、9的数字很感兴趣,在1到40中这样的数包括1、2、9、10至32、39和40,共28个,它们的和为574。
求,在1到2019中,所有这样的数的和为多少?
#include<stdio.h>
int Get_Sum(int tmp)
{
int sum = 0;
int n = 0;
for (int i = 1; i <= tmp; i++)
{
n = i;
while (n)
{
if (n % 10 == 2 || n % 10 == 0 || n % 10 == 1 || n % 10 == 9)
{
sum += i;
break;
}
else
{
n = n / 10;
}
}
}
return sum;
}
int main()
{
int n = 0;
scanf_s("%d", &n);
printf("%d\n", Get_Sum(n));
return 0;
}
首先输入40来测试一下:
输入2019