2-2选择题的疑问

2-2选择题的疑问

for($i=5;$i>0;$i--){

echo $i-1;

}

我想问一下这个流程的问题 

首先第一次执行$i=5 比较$i是否大于0 如果大于0输出$i-1; 输出为5-1 此时$i=4 执行$i - - 由于后减此时的$i=4

第二次执行$i=4 比较$i是否大于0 如果大于0输出$i-1 这里我就有疑问? 第一次的$i - -不应该在这里执行吗

此时的$i=3 输出的结果应该不是3-1吗 第二次的输出结果不应该是$i=2吗


正在回答

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

2回答

您好,程序第一次执行:$i=5;5>0;5-1=4因此输出4(这里是没有对$i的原始值进行改变的,只是在输出时进行了减一操作)。此时应执行5--操作。

程序第二次执行:此时$i=4;4>0;4-1=3因此输出3。此时应执行4--操作。

程序第三次执行:此时$i=3;3>0;3-1=2因此输出2。此时应执行3--操作。

以此类推,结果为43210。

for($i=5;$i>0;$i--){
echo $i-1;
}

如果解决了您的问题,请采纳,祝学习愉快!

  • qq_Lcy_6 提问者 #1
    非常感谢!
    2018-01-24 12:13:52
  • 老师,你没回答清楚同学提出的问题,for循坏的执行顺序不是表达式1,表达式2,代码段,表达式3 表达式2 代码段。。。按老师的回答,表达式3就一直不执行么
    2018-06-05 01:33:11
  • 您好,在解释中:程序第一次执行:$i=5(表达式1);5>0(表达式2);5-1=4(代码段)因此输出4。此时应执行5--(表达式3)操作。以此类推请查看上面解释哦~祝学习愉快!
    2018-06-05 09:37:26
Johnnydepp 2018-01-23 13:39:33

。。。。。。

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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