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

Java使用for循环、print与println绘制金字塔反斜杠位置错误问题

问题原因

  • 代码中多余的if (i < 4)判断是核心错误:该判断限制了只有前4层输出左斜杠/,既不符合“两侧各有5个斜杠/反斜杠”的要求,也导致最后一层(i=4)反斜杠前的空格是从行首直接计算的,少了左斜杠占用的1个字符宽度,最终最后一个反斜杠位置比预期偏左1位。

修复方案

删除if ( i < 4) {这行代码和对应的结束大括号即可,修改后完整代码如下:

public static void main(String[] args) {
    for (int i = 0; i < 5; i++) {
        for (int a = 4 - i; a > 0; a--) {
            System.out.print(" ");
        }
        System.out.print("/");
        for (int a = 2 * i; a > 0; a--) {
            System.out.print(" ");
        }
        System.out.println("\\");
    }
}

修复后输出效果

/\
   /  \
  /    \
 /      \
/        \

完全符合5层金字塔的要求,左右两侧各有5个斜杠/反斜杠,所有反斜杠位置对齐正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 11:45:00