谁能给我详细的解释一下
作为新手,我觉得这题难在我们将目标定在了“打印一个三角形”,而不是实现三个条件。
换一种思路,首先我们定义的是i=第几行,j=输出几个空格,k=输出几个星星。这样以来解决的方法就是
1、定义i最大4行,所以i是用i<5; i++。
2、然后j每行要输出多少个空格,第一行4个,第二行3个,第三行2个,第二行1个,所以解决方法是初始定义j=i(第一行就是j=1),然后定义条件<5(因为我们的目的是第一行输入4空格,第二行输入3,第三行2,第四行1,这样当第一行的时候,j=1,没满足5,就可以循环+3次,一共4个空格,以此类推)
3、定义k是输出的星星,因为空格已经由j输出好了,所以根据要求,第一行1个星星,第二行3个,第三行5个,那么k就可以用初始为0,当这个值小于行数*2-1时,K就加一个,你可以反向算一下,第一行是行数是1,k的0<1,所以k+1,那么第一行输入一颗星,第二行行数是2(2(2-1=3),所以k=3颗星。