【PTA数据结构 | C语言版】阶乘的递归实现
本专栏持续输出数据结构题目集,欢迎订阅。
文章目录
- 题目
- 代码
题目
请编写程序,求给定非负整数 n 的阶乘。建议用递归方式计算。
输入格式:
输入在一行中给出一个非负整数 n(≤10)。
输出格式:
在一行中输出 n!。
输入样例:
5
输出样例:
120
代码
#include <stdio.h>// 递归计算阶乘
int factorial(int n) {if (n == 0 || n == 1) {return 1; // 递归终止条件:0! 和 1! 等于 1} else {return n * factorial(n - 1); // 递归步骤}
}int main() {int n;scanf("%d", &n);// 计算阶乘并输出结果printf("%d\n", factorial(n));return 0;
}