酷代码 AI
菜单

题目描述 桃子不喜欢和4有关的数字,只要是4的倍数或者包含4的数字都是她的倒霉数字。她现在想从1数到n,跳过倒霉数字。 请你编写一个程序帮助她完成吧。 输入格式 一行一个数字 n n(n < 1000) 输出格式 若干个正整数,每个数中间用空格隔开 input1 复制 15 output1 复制 1 2 3 5 6 7 9 10 11 13 15 C++

```cpp #include <iostream> using namespace std; // 检查一个数字是否是4的倍数 bool isMultipleOfFour(int num) { return num % 4 == 0; } // 检查一个数字是否包含数字4 bool containsFour(int num) { while (num > 0) { if (num % 10 == 4) { return true; } num /= 10; } return false; } int main() { int n; // 读取输入的数字n cin >> n; // 用于标记是否是第一个输出的数字 bool first = true; for (int i = 1; i <= n; i++) { // 检查当前数字是否既不是4的倍数也不包含数字4 if (!isMultipleOfFour(i) && !containsFour(i)) { if (!first) { // 如果不是第一个数字,先输出一个空格 cout << " "; } // 输出符合条件的数字 cout << i; first = false; } } cout << endl; return 0; } ``` 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 在判断数字是否包含4时,要确保对每一位数字都进行检查,避免遗漏。 2. 输出格式要求每个数中间用空格隔开,需要处理好第一个数字的输出,避免多余的空格。 3. 注意输入的数字范围,本题中n < 1000,确保代码在这个范围内能正确运行。 [2026-01-28 13:56:24 | AI写代码神器 | 382点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多