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

如何移除C++打印9x9数独代码中每行输出末尾的多余空白字符

修复方案

问题原因

你当前的代码逻辑为每输出一个数独数字就追加一个空格,每行9个数字共输出9个空格,最后一个空格会出现在行尾,形成冗余空白。

可选实现方案

方案1:单独输出行首元素(固定9列场景下效率最优)

void printSudoku9x9(int grid[9][9]) {
    for (int y = 0; y < 9; y++){
        // 行首第一个元素不加前置空格
        cout << grid[y][0];
        // 从第二个元素开始先输出空格再输出数字
        for (int x = 1; x < 9; x++) {
            cout << ' ' << grid[y][x];
        }
        cout << endl;
    }
}

方案2:通过下标判断是否输出空格(兼容性更强,适配列数不固定的场景)

void printSudoku9x9(int grid[9][9]) {
    for (int y = 0; y < 9; y++){
        for (int x = 0; x < 9; x++) {
            // 仅非行首元素前加空格
            if (x != 0) {
                cout << ' ';
            }
            cout << grid[y][x];
        }
        cout << endl;
    }
}

两种方案最终效果一致,都能保证数字之间仅保留1个分隔空格,行尾无多余空白字符。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 02:48:02