You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C++循环中移除指定奇数(5、7、93)?

移除指定奇数的C++代码修改方案

原代码用于输出1到100之间的所有奇数,要移除5、7、93这三个数,这里提供两种实用的实现方式:

方法一:直接添加条件判断

这是最直观的方式,在输出语句前增加判断逻辑,仅当当前数字不是目标排除项时才执行输出:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    for(int i = 1; i <= 100; i += 2)
    {
        // 跳过5、7、93这三个数字
        if(i != 5 && i != 7 && i != 93)
        {
            cout << i << "\t";
        }
    }
    return 0;
}

这种写法适合排除数量较少的场景,代码简洁直接,不需要额外引入数据结构。

方法二:用集合存储需排除的数字

如果后续需要频繁调整排除列表,用集合存储目标值会更灵活,维护成本更低:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    // 把要排除的数字存入集合
    unordered_set<int> exclude_nums = {5, 7, 93};
    for(int i = 1; i <= 100; i += 2)
    {
        // 检查当前数字是否不在排除集合内
        if(exclude_nums.find(i) == exclude_nums.end())
        {
            cout << i << "\t";
        }
    }
    return 0;
}

后续要新增或删除排除项时,只需要修改集合中的元素即可,无需改动判断逻辑,扩展性更强。

内容的提问来源于stack exchange,提问作者Lemon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 17:27:23