卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64336本站已运行4115

C++ 函数递归详解:递归实现阶乘和斐波那契数列

递归是函数自我调用的编程技术,分为基线条件和递归调用。使用递归可以实现阶乘,即正整数乘以其所有较小正整数的乘积,和斐波那契数列,即每个数字是前两个数字总和的数列。

C++ 函数递归详解:递归实现阶乘和斐波那契数列

C++ 函数递归详解:递归实现阶乘和斐波那契数列

简介

递归是一种编程技术,它允许函数调用自身来解决问题。递归函数通常分为两部分:基线条件和递归调用。

阶乘的递归实现

阶乘是将一个正整数乘以其所有较小正整数的乘积。例如,5 的阶乘等于 5 x 4 x 3 x 2 x 1 = 120。

int阶乘(int n) {
  if (n == 0) {  // 基线条件
    return 1;
  } else {
    return n * 阶乘(n - 1);  // 递归调用
  }
}

实战案例:计算 10 的阶乘

int result = 阶乘(10);
cout << "10 的阶乘为 " << result << endl;

输出:

10 的阶乘为 3628800

斐波那契数列的递归实现

斐波那契数列是一个数列,其中每个数字是前两个数字的总和。该数列以 0 和 1 开始。

int斐波那契(int n) {
  if (n == 0) {  // 基线条件
    return 0;
  } else if (n == 1) {
    return 1;
  } else {
    return 斐波那契(n - 1) + 斐波那契(n - 2);  // 递归调用
  }
}

实战案例:打印斐波那契数列的前 10 个数字

for (int i = 0; i < 10; i++) {
  cout << 斐波那契(i) << " ";
}

输出:

0 1 1 2 3 5 8 13 21 34
卓越飞翔博客
上一篇: 如何为 Go 函数编写全面的单元测试
下一篇: C++ 函数声明中的属性列表:掌握函数行为的定制方法
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏