关于第一章的考试题

关于第一章的考试题

执行语句for(int i=1;i++<4;);后变量i的值为()

能否解读一下这个语句,不太明白为什么这么写

正在回答

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

2回答

你好,这个写法与for(int i=1;i<4;i++)是等价的,i++<4是先比较再自增,即先让i和4进行比较,最后再使i=i+1。祝学习愉快~

  • 请问 答案为什么是5呢?执行到 i++=4, 4不小于4不是就不满足条件了吗?
    2017-09-28 17:29:27
  • 当i=4时,条件不成立,但是还是会继续执行for循环内的i++,所以它的值还是会继续增加。
    2017-09-28 18:17:05
  • AmyTTC #3
    你好,我测试后发现它是不等价的,可以用这个代码测试。 int sum = 0; int sum1 = 0; int i = 0; for (; i++<4; ) { sum += i; } System.out.println("sum =" + sum); System.out.println("i = "+ i); for(int j = 0; j<5; j++) { sum1 += j; } System.out.println("sum1 = " + sum1); 由于i++<4是一个整体,所以执行i=4的时候,会先判断再自增,但是如果变成i<4; i++就不一样了,会先判断,如果不满足条件就不会在进行i++了
    2017-10-30 20:21:55
提问者 慕粉3838620 2017-08-02 11:38:58

好的明白了,谢谢

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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