C++编程:找出1到n中被2至9整除的倍数

需积分: 9 1 下载量 153 浏览量 更新于2024-09-11 收藏 1KB TXT 举报
"这篇代码示例展示了如何使用C++编程找出1到某个数之间能被2、3、4(部分实现)整除的倍数。通过创建三个向量存储不同整除关系的数字,程序逐步筛选并输出结果。" 在这个C++程序中,主要的知识点包括: 1. **标准库的引用**:`#include`语句用于引入C++的标准库,如`<iostream>`(虽然在示例中未直接使用,但在实际的输入/输出操作中常见)、`<vector>`用于动态数组的管理。 2. **`main`函数**:这是C++程序的入口点,其中包含了程序的主要逻辑。 3. **变量声明**:`int n, k`用于存储输入的数字和临时计算值。 4. **`std::vector`容器**:`std::vector<int> m_two_list, m_three_list, m_four_list`是三个整数向量,分别存储能被2、3、4整除的数。向量允许动态增长,适合作为存储结果的容器。 5. **输入与输出**:`printf`和`scanf`是C语言风格的IO函数,分别用于输出和输入。`printf`用于格式化输出,`scanf`用于读取用户输入的整数`n`。 6. **循环结构**:`for(int i=1; i<n; i++)`遍历从1到`n-1`的所有数字,检查它们是否能被2、3、4整除。 7. **条件语句**:`if(i%2==0)`、`elseif(i%3==0)`用于判断当前数字`i`是否可以被2或3整除。`%`运算符是取余数运算,如果余数为0,则表明可以整除。 8. **向量插入操作**:`m_two_list.push_back(i)`将满足条件的数字添加到对应的向量中。 9. **二次筛选**:为了找到同时能被4整除的数,程序对`m_two_list`进行二次筛选,将满足条件的数添加到`m_four_list`。 10. **向量遍历**:使用`for`循环遍历每个向量,并输出其中的元素。例如,`for(int i=0; i<m_two_list.size(); i++)`。 11. **输出格式化**:`printf`用于按特定格式输出结果,例如`printf(",%d",temp);`会在逗号后输出向量中的数值。 12. **程序结束**:`return 0;`表示程序正常结束,通常在`main`函数的末尾使用。 这个程序的不足之处在于它没有完全按照题目要求找出所有2到9的倍数,而是只实现了2、3和4的情况。为了完成题目要求,需要将`for(k=2; k<=9; k++)`循环及后续的条件判断加入到代码中,处理其他整数的倍数情况。