```cpp #include <iostream> using namespace std; int main() { int n; // 读取输入的正整数 n cin >> n; // 遍历从 1 到 n 的所有整数 for (int i = 1; i <= n; i++) { // 判断个位是否为 5 或者 8 if (i % 10 == 5 || i % 10 == 8) { // 满足条件则输出该整数 cout << i << endl; } } return 0; } ``` 额外需要注意的逻辑点: 1. 确保输入的 `n` 在题目给定的数据规模内,即 `1 < n ≤ 10000`,可添加简单的输入验证逻辑。 2. 判断个位数字时,使用 `i % 10` 是关键,要理解该表达式的含义。 3. 注意输出格式,每个满足条件的数独占一行。 [2025-07-20 15:09:35 | AI写代码神器 | 230点数解答]