zoukankan      html  css  js  c++  java
  • 递归函数

    递归函数  : 函数调用本身。

    列:

    5的阶乘 :——》120

    int mm(int a) {  

    if (a<=1)  

       {       

      return a;    

    }    

    else    

    {        

    return mm(a-1)*a;   

      }

    }

    int main(int argc, const char * argv[])

    {   

        int a=mm(5);   

         printf("%d ",a);   

         return 0;

    }

    步奏:先传参进mm(5) ,   if  不满足,  esle  调用mm(4)*5

    mm(4)    if  不满足,  esle  调用mm(3)*4

    mm(3)    if  不满足,  esle  调用mm(2)*3

    mm(2)   if  不满足,  esle  调用mm(1)*2

    mm(1)    if  满足  。

    return 返回值  1

    综上所述  得 1*2*3*4*5

    //2的4次方

    int mm(int a,int b) {  

    if (b<=1)  

       {       

      return a;    

    }    

    else    

    {        

    return mm(a,b-1)*a;   

      }

    }

    int main(int argc, const char * argv[])

    {   

        int a=mm(2,4);   

         printf("%d ",a);   

         return 0;

    }

    步奏:先传参进mm(2,4) ,   if  不满足,  esle  调用mm(2,3)*2

    mm(2,3)    if  不满足,  esle  调用mm(2,2)*2

    mm(2,2)    if  不满足,  esle  调用mm(2,1)*2,

    mm(2,1)    if  满足  。

    return 返回值  2

    综上所述  得 2*2*2*2  得 16

  • 相关阅读:
    Redis 简介
    图片懒加载、selenium和PhantomJS
    Python网络爬虫之三种数据解析方式
    Scrapy框架之CrawlSpider
    Scrapy 框架
    python 网络爬虫概念与HTTP(s)协议
    Mysql概念及基本操作
    Python re 模块
    线程与进程应用场景
    全局解释器锁 GIL
  • 原文地址:https://www.cnblogs.com/wangjinshan/p/7110493.html
Copyright © 2011-2022 走看看