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

真的没懂 为什么按这个程序输出就是那个需要的图案呢怎么看第一行到底是空几个格呀

http://img1.sycdn.imooc.com//60c8d5f1000143dc02560320.jpgj=i的时候,第一排i=1,那不是j也等于1,那不是只能输出一个空格吗,(是j等于几就输出几个空格吗)但是第一排不是一个空格啊,求各位大佬帮忙解答,感谢!

正在回答

2 回答

子循环要全部循环完成才开始下一个父循环,所以父循环i=1时循环开始,第一个子循环j从1加到4,到5时;因为5不小于5,所以结束第一个子循环,第一排就输出4个空格;然后第二个子循环开始k< 2*i-1,0<1,所以第一排第五个位置输出*,然后k++,k就=1了,1不是小于1的,第二个子循环结束,最后输出换行,所以第一行就是4个空格加1个*。

父循环i=2再开始,还是等子循环全部完成以后结束,换行,然后i=3,......以此类推。

10 回复 有任何疑惑可以回复我~
#1

bugswriter

第一排是三个空格的。
2021-08-03 回复 有任何疑惑可以回复我~
#2

bugswriter 回复 bugswriter

我搞懂了,是四个空格的,第一行四个,第二行三个,第三行两个,第四行一个。答案给的“每行输出的空格数等于(最后一行*号数减去当前行的*号数)除2”不对。最后一行有一个空格,而0除2不等于1。
2021-08-03 回复 有任何疑惑可以回复我~
#3

慕瓜4214953

帮了大忙了!谢谢
2021-09-05 回复 有任何疑惑可以回复我~

j=i 这个for循环输出一个空格以后还会继续循环

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

真的没懂 为什么按这个程序输出就是那个需要的图案呢怎么看第一行到底是空几个格呀

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信