# 特别数的和 **题目描述** 小明对数位中含有 2、0、1、9 的数字很感兴趣(不包括前导 0),在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。 请问,在 1 到 n 中,所有这样的数的和是多少? **输入格式** 共一行,包含一个整数 n。 **输出格式** 共一行,包含一个整数,表示满足条件的数的和。 **数据范围** ``` 1≤n≤10000 ``` **输入样例:** ``` 40 ``` **输出样例:** ``` 574 ``` 以下代码实现了这一功能,请你填补空白处的内容: ```cpp #include using namespace std; int ans, n; bool check(int n) { while (n) { int tmpn = n % 10; if (tmpn == 2 || tmpn == 0 || tmpn == 1 || tmpn == 9) return true; __________________ } return false; } int main() { cin >> n; for (int i = 1; i <= n; i++) { if (check(i)) ans += i; } cout << ans << endl; return 0; } ``` ## aop ### before ```cpp ``` ### after ```cpp ``` ## 答案 ```cpp n /= 10; ``` ## 选项 ### A ```cpp n %= 10; ``` ### B ```cpp break; ``` ### C ```cpp continue; ```