1
0

14-recursion.c 721 B

12345678910111213141516171819202122232425262728293031
  1. #include <stdio.h>
  2. /**
  3. * 计算给定整数的阶乘。
  4. *
  5. * @param n 输入的整数,必须为非负数。
  6. * @return 返回 n 的阶乘结果。如果 n <= 1,返回 1。
  7. */
  8. int factorial(int n) {
  9. // 递归终止条件:当 n 小于等于 1 时,返回 1
  10. if (n <= 1) {
  11. return 1;
  12. } else {
  13. // 递归调用:返回 n 与 (n-1) 的阶乘的乘积
  14. return n * factorial(n - 1);
  15. }
  16. }
  17. int main() {
  18. // 定义一个整数变量并赋值为 5
  19. int num = 5;
  20. // 调用 factorial 函数计算 num 的阶乘,并将结果存储在 result 中
  21. int result = factorial(num);
  22. // 打印结果到控制台
  23. printf("Factorial of %d is %d.\n", num, result);
  24. // 程序正常退出
  25. return 0;
  26. }