#include <stdio.h>
int factorial(int a);
int Fibonacci(a);
long Hanoi(a);

void main()
{

}

函数递归调用:函数本身调用自身。类似于循环。
注意:编写递归程序类似于循环语句需要注意条件,函数调用到什么时候为止,否则会出现死循环。

1.利用递归实现阶乘

int factorial(int a)
{
  if(a==1)

  {
  return 1;
  }

  else

  {
  return a*factorial(a-1);//递归调用
  }
}

2.斐波那契数列,古典兔子问题。

int Fibonacci(a)
{
  if(a==1||a==2)
  {
    return 1;
  }
  else
  {
    return Fibonacci(a-1)+Fibonacci(a-2);
  }
}

3.汉诺塔 DIY 根据层数计算多少次

long Hanoi(a)
{
  if(a==1)
  {
    return 1;
  }
  else
  {
    return 2*Hanoi(a-1)+1; //H(n) = 2*H(n-1)+1 (n>1)
  }
}

4.局部变量:A.作用范围仅限于该函数内;

      B.不同函数可以声明相同的名称;

      C.复合函数中只在当前的{}内有效。

5.全局变量:A.声明在所有函数之外;

      B.可以共同使用;

      C.全局变量和局部变量,在局部变量的作用范围内,同名的全局变量不起作用。

//形式参数是局部变量,只在该函数内有效。         注意:在设定的时候必须给类型

最新文章

  1. git format-patch &amp; git apply &amp; git clean
  2. Maven学习总结(一)——Maven入门——转载
  3. 重载赋值运算符 &amp;&amp; 对象
  4. dedecms升级后报错
  5. uva 437,巴比伦塔
  6. javascript中onclick事件能调用多个方法吗
  7. 小白日记47:kali渗透测试之Web渗透-XSS(一)
  8. 3.Spring-用反射模拟IoC
  9. c# 使用ChartDirector绘图的一些个人体会
  10. Vim 快捷键整理
  11. js中的潜伏者之Arguments对象
  12. [站点部署_01]wordpress建站网页响应速度慢
  13. 关于C++中虚函数表存放位置的思考
  14. html 上传文件
  15. Nginx 开启gzip压缩(图片,文件,css)
  16. Python 的第一个小程序
  17. 吴恩达Machine Learning 第一周课堂笔记
  18. spark streaming 整合 kafka(一)
  19. 浅析JAVA中堆内存与栈内存的区别
  20. APICloud 真机连接失败

热门文章

  1. 【树形dp 思维题】HHHOJ#483. NOIP司马懿
  2. 重温JSP学习笔记
  3. 使用js拆分带参数的URL,将参数分离出来
  4. SpringBoot项目 设置全局跨域
  5. Python之windows锁屏
  6. nginx负载均衡 页面缓存
  7. confirm 弹出信息
  8. sh_19_字符串拆分和拼接
  9. Fragment中 监听Android 返回按钮事件
  10. [心得]暑假DAY1 | 7-7考试总结