• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > 网站建设 > 什麽是遞歸函數?

    什麽是遞歸函數?

    作者: 分类:网站建设 点击: 1,884 次
    wordpress CMS主题:ssmay主题

      所謂遞歸函數,就是自調用函數,在函數體內直接或間接自己調用自己。但遞歸函數自調用時需要設置自調用的條件,若滿足條件,則調用函數本身,若不滿足則終止本函數的自調用,然後把目前流程的主控權交回給上壹層函數來執行。下面,通過壹個實例來了解壹下這種函數。

      <?phpfunction table($a){echo $a." ";if($a>0)  //自调用的条件

      {

      table($a-1);  //自调用时变量的值减1

      }

      else

      {

      echo "<-->";

      }

      echo $a." ";

      }

       

      table(10);

      ?>

      輸出的結果是:10 9 8 7 6 5 4 3 2 1 0 <--> 0 1 2 3 4 5 6 7 8 9 10

      大家可能有點迷惑,前面的10 9 8 7 6 5 4 3 2 1 0可以很好理解,但後面的0 1 2 3 4 5 6 7 8 9 10是怎麽來的呢?這是因為在每次自調用時,自調用後面的echo $a."";沒有執行,它會從最後壹個自調用結束後才開始1個1個地來運算顯示,直到第1個自調用時才結束。最後壹個自調用,即$a=1時,這樣壹來,table($a-1)自調用後$a的值就成為0了;以此類推,倒數第2個自調用,$a=2,也就輸出了1……直到第1個自調用。

      下面是通過遞歸函數計算5的階乘

      <?phpfunction demo($a){

      if($a > 1)

      $r=$a*demo($a-1);

      else

      $r=$a;

      return $r;

      }

      echo demo(5);

      ?>

      輸出的結果是:120(即1*2*3*4*5的結果)。

    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201404061862.html
    本文时间:2014-04-06 14:59:13
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.