谁能帮我解释一下?
没有看懂答案
第一个循环:
for(i=1; i<5; i++)
因为要输出的三角形总共有4层,所以这个循环总共进行四次。
第二个循环:
for(j=i; j<5 ; j++ )
通过题目给的要求,你观察发现,第一层在*之前有四个空格,第二层在*之前有三个,依次类推,得到一个规律,刚好能用这个循环来实现这个规律。
接下来这个循环:
for( k=0 ; k<2*i-1 ; k++ )
你会发现,在输出完空格之后,我们就必须输出*了,所以现在我们要找*的规律。观察发现,第一层有一个*,第二层有三个*,依次类推,所以我们可以知道,如果现在是第n层,那么需要输出(2*n-1)个*号。这个循环就是为了实现这个规律的,你如果实在看不懂,可以手动模拟一下,一步一步的按照程序在纸上比划一遍。那样了解的更加彻底了。
举报