• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

本人自学php,遇到递归算法有关问题,请帮忙解答下

php 搞代码 4年前 (2022-01-24) 25次浏览 已收录 0个评论

本人自学php,遇到递归算法问题,请各位高手帮忙解答下。
<?php
function display($i){
echo $i;
echo ‘


‘;
$i=$i-2;
if($i>0){
display($i);
}
echo $i;
echo ‘


‘;
}
display(10);
?>

按输出结果的值应该是 10 8 6 4 2 为什么又返回执行 0 2 4 6 8 不明白为什么?
10
8
6
4
2
0
2
4
6
8

——解决方案——————–

执行顺序为红色箭头所示
——解决方案——————–
function display($i){
echo $i;
echo ‘


‘;
$i=$i-2;
if($i>0){
display($i);
}
echo $i;
echo ‘


‘;
//这里去掉这里你又输出了一遍
}

——解决方案——————–
这样看的清楚些

<?php<br />function display($i){<br />  echo __LINE__ .<div style="color:transparent">本&文来源gaodai^.ma#com搞#代!码网</div><strong>搞gaodaima代码</strong>": $i<br>";<br />  $i=$i-2;<br />  if($i>0){<br />    display($i);<br />  }<br />  echo __LINE__ .": $i<br>";<br />}<br />display(10);

3: 10
3: 8
3: 6
3: 4
3: 2
8: 0
8: 2
8: 4
8: 6
8: 8


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:本人自学php,遇到递归算法有关问题,请帮忙解答下
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址