使用 for 循环创建圣诞树

新手上路,请多包涵

我正在尝试使用 for 循环和嵌套 for 循环制作一棵圣诞树。要做到这一点,我需要能够用 * 制作金字塔。我已经尝试了无数次,但在制作时遇到了问题。这是我的代码:

 for(int i=1;i<=10;i++){
    for(int j=10;j>i;j--){
        System.out.println(" ");
    }

    for(int k=1;k<=i;k++){
        System.out.print("*");
    }

    for(int l=10;l<=1;l++){
        for(int h=1;h<=10;h++){
            System.out.print(" ");
        }
    }

    System.out.println();
}

我想做的是:

      *
    ***
   *****
  *******

原文由 Atif Shah 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 837
2 个回答

试试这个更简单的代码:

 public class ChristmasTree {

 public static void main(String[] args) {

  for (int i = 0; i < 10; i++) {
   for (int j = 0; j < 10 - i; j++)
    System.out.print(" ");
   for (int k = 0; k < (2 * i + 1); k++)
    System.out.print("*");
   System.out.println();
  }
 }
}

它使用 3 个循环:

  • 第一个是行数,
  • 第二个用于打印空格,
  • 第三个用于打印星号。

原文由 Sourav Kanta 发布,翻译遵循 CC BY-SA 3.0 许可协议

你可以用简单的逻辑来做

for (int i = 0; i < 4; i++)
            System.out.println("   *******".substring(i, 4 + 2*i));

原文由 Bruce 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题