```cpp #include <iostream> using namespace std; int main() { int a, b; // 输入两个整数 a 和 b cin >> a >> b; int sum = 0; // 遍历从 a 到 b 之间的所有数字 for (int i = a; i <= b; i++) { // 判断数字的个位数是否为 3 if (i % 10 == 3) { // 如果个位数是 3,将该数字累加到 sum 中 sum += i; } } // 输出个位数是 3 的数字的和 cout << sum << endl; // 判断 sum 是否是 3 的倍数 if (sum % 3 == 0) { // 如果是 3 的倍数,输出 YES cout << "YES" << endl; } else { // 如果不是 3 的倍数,输出 NO cout << "NO" << endl; } return 0; } ``` 额外需要注意的逻辑点 1. 遍历范围要包含 `a` 和 `b` 本身,即循环条件为 `i <= b`,否则可能会遗漏符合条件的数字。 2. 对于判断是否为 3 的倍数,使用 `sum % 3 == 0` 这个条件即可,要注意取余运算符的使用。 3. 输入输出格式要严格按照题目要求,输出的 `YES` 和 `NO` 要大写,并且注意换行。 [2025-07-12 21:48:22 | AI写代码神器 | 358点数解答]