A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

class ArrayTest
{               
        public static void main(String[] args)
        {
                               

               for (int x=0; x<5; x++)
               {
                                   for (int y=x; y<5; y++)
                                   {
                                           System.out.print("-");
                                   }

                                   for (int z=0; z<=x; z++)
                                   {
                                           System.out.print("* ");
                                   }
                                        System.out.println(); //这个位置为什么一定要输出这个代码 才能打印出自己想要的结果
                                  
               }  
                          
        }
}



写了 这个代码以后  System.out.println();


5 个回复

倒序浏览
那个带了“ln”是换行的意思,因为前面的没换行。
回复 使用道具 举报
首先,这是个for循环的潜逃。外循环控制行,内循环控制列的。你的代码中的内循环也是两个for循环组成的。举例:当x=0时,进入到内循环中后,先执行第一个for循环,判断0<5,然后输出了一个-,再继续循环,总共输出了5个-。这样内循环的第一个for循环就结束了,但是内循环还有第二个for循环。继续执行。z=0,0<=1,所以输出一个* ,然后z变成1,1<=1,又输出了一个* 。到此为止,第一次内循环才真正的结束。紧接着执行System.out.println();这句代码是换行的意思。因为一次完整的内循环已经结束了,紧接着要进行下一次循环了,这时候加个换行,才能输出那种倒三角或者正三角的形状,不加这行代码的话,那么输出的所有-和*都将打印在一行中。
回复 使用道具 举报
Sorry,刚才手误,打了一个小错误。对于x=0,第一次内循环中的第二个for循环,z=0,z<=0,所以输出一次*,然后z变成1,1不小于等于0,所以只输出一个*,至此第一次内循环才结束,然后就是刚才后面的解释了。不好意思了。
回复 使用道具 举报
打印一个菱形的代码怎么写
回复 使用道具 举报
转行作用,如果不换行就打印在一行
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马