【PTA数据结构 | C语言版】阶乘的递归实现

本专栏持续输出数据结构题目集,欢迎订阅。

文章目录

题目

请编写程序,求给定非负整数 n 的阶乘。建议用递归方式计算。

输入格式:

输入在一行中给出一个非负整数 n(≤10)。

输出格式:

在一行中输出 n!。

输入样例:

5

输出样例:

120

代码

cpp 复制代码
#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;
}    
相关推荐
2601_9491465319 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
你撅嘴真丑19 小时前
第九章-数字三角形
算法
uesowys19 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
ValhallaCoder19 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
董董灿是个攻城狮19 小时前
AI 视觉连载1:像素
算法
智驱力人工智能20 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
孞㐑¥20 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
月挽清风20 小时前
代码随想录第十五天
数据结构·算法·leetcode
XX風21 小时前
8.1 PFH&&FPFH
图像处理·算法
知南x21 小时前
【Ascend C系列课程(高级)】(1) 算子调试+调优
c语言·开发语言