为了账号安全,请及时绑定邮箱和手机立即绑定

印刷星星图案

印刷星星图案

慕的地10843 2023-05-17 16:04:27
我正在尝试打印如下所示的星形图案***************但我得到了这个。********************最后一行 star 似乎有重复,我不知道为什么会这样。你能帮助我吗?这是我的代码:public class Test1 {    public static void main(String[] args) {        for (int i = 1; i <= 5; i++) {            System.out.println("*");            for (int j = 1; j <= i; j++) {                System.out.print("*");            }        }    }}
查看完整描述

4 回答

?
慕村225694

TA贡献1880条经验 获得超4个赞

你把换行符放在错误的位置。我会把它与写作分开*,比如


public class Test1 {


    public static void main(String[] args) {


        for (int i = 1; i <= 5; i++) {

            for (int j = 1; j <= i; j++) {

                System.out.print("*");

            }

            System.out.println();

        }

    }

}


查看完整回答
反对 回复 2023-05-17
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

*你一开始就打印一个。它应该像你正在做的那样完成。在 1 次完整迭代后打印新行For,如下所示:


代码:


for (int i = 1; i <= 5; i++) 

{

    //System.out.println("*");   // This line should not be here 

    for (int j = 1; j <= i; j++) 

    {

        System.out.print("*");

    }

    System.out.println();        // you can print new line after each nested-for compleletion

}


查看完整回答
反对 回复 2023-05-17
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

简短回答(TL;DR)

你的换行符放错了。在内部 for 循环执行之后放置换行符,如下所示:


public class Test1 {


public static void main(String[] args) {


    for (int i = 1; i <= 5; i++) {

        for (int j = 1; j <= i; j++) {

            System.out.print("*");

        }

        System.out.println();

    }

  }

}



详细解答

首先,您必须了解System.out.print()和之间的区别System.out.println()。这两个基本上做同样的事情:他们打印出传递给他们的参数。但是,有一个明显的区别:System.out.println()在打印后生成一个新的换行符,但System.out.print实际上并没有。要理解这个概念,请检查下面的示例代码:


System.out.println("Tadaa");

System.out.print("Ta");

System.out.print("daa");

System.out.print("Stackoverflow");

其输出将是:


多田


多田


堆栈溢出


使用这个逻辑,很容易看出哪里出了问题。直觉上,中断 [ .println()] 应该发生在每次迭代结束时。


我希望这有帮助。编码愉快!


查看完整回答
反对 回复 2023-05-17
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

这是所需输出的代码


for (int i = 1; i <= 5; i++) 

{

    //System.out.println("*");   

    for (int j = 1; j <= i; j++) 

    {

        System.out.print("*");

    }

    System.out.println();        

}


查看完整回答
反对 回复 2023-05-17
  • 4 回答
  • 0 关注
  • 124 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信