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

C++中如何使用for循环替代大量重复的if判断语句

C++ 优化堆叠if判断的方案

你的原有代码本质是逐行遍历3*3的二维数组,为每个值为'X'的位置按顺序赋值为'1'到'9'的字符,直接用双层for循环加计数器就可以完全替换所有重复的if判断,逻辑完全等价:

int num = 1;
// 遍历二维数组的行
for(int i = 0; i < 3; ++i) {
    // 遍历当前行的列
    for(int j = 0; j < 3; ++j) {
        if(masiv[i][j] == 'X') {
            // 数字转对应字符,直接用字符ASCII偏移计算即可
            masiv[i][j] = '0' + num;
        }
        num++;
    }
}

方案优势

  • 彻底消除重复堆叠的if代码,代码行数大幅压缩
  • 可扩展性更强,如果后续二维数组的行列数发生变化,只需要调整循环的边界条件,不需要新增/删除if判断
  • 逻辑表达更直观,直接体现逐行给数组位赋值的业务规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:45:03