关于for循环乘法口诀表问题

关于for循环乘法口诀表问题

老师,你好,我在乘法口诀表中这个问题上虽然解决了,但是还是想不通。

http://img1.sycdn.imooc.com/climg//59c627eb000163f408300552.jpg

http://img1.sycdn.imooc.com/climg//59c627eb00019b7708450570.jpg

http://img1.sycdn.imooc.com/climg//59c627eb0001c43f08340562.jpg

http://img1.sycdn.imooc.com/climg//59c627ee0001a70808180562.jpg

第一次循环体结束后 i =1,j=1;

打印出1*1=1

然后分别i++ ,j++;

此时i=2,j=2; 那为什么程序又回到了i=2,j=1;不是应该直接打印2*2=4,就是这里想不通了

还有就是如果说给j重新初始化了为1,那为什么不把i也重新初始化,完了,彻底蒙了

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
Tender10 2017-09-23 17:46:39

不是这样的哦。这个for循环嵌套的流程是这么走的,首先i=1,j=1,打印完成之后,最外层不会变的,也就是i还是等于1,j会执行++操作,变成2。但是这个时候第二个for循环就不满足条件了。因为j需要小于等于i的值。当不符合条件后,再回到第一层for循环,执行i++,i=2,然后同理。总之是,第一层for循环变量值变后,会一直等到第二层for循环不满足条件后才会改变值。

  • 提问者 LongFace #1
    嗯呢,老师循环明白了,那我想问2*1是怎么打印出来的,因为i不满足条件了,所以i=2.j=2那不是应该直接打印2×2嘛
    2017-09-23 18:27:58
  • 提问者 LongFace #2
    可是断点调试的时候的确是i先变成了2,然后j为1啊
    2017-09-23 18:34:02
  • 提问者 LongFace #3
    老师,帮我回答下
    2017-09-24 09:11:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师