2025-03-08 学习记录--C/C++-PTA 习题10-2 递归求阶乘和

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻

一、题目描述 ⭐️



二、代码(C语言)⭐️

c 复制代码
#include <stdio.h>

double fact( int n );
double factsum( int n );

int main()
{
    int n;

    scanf("%d",&n);
    printf("fact(%d) = %.0f\n", n, fact(n));
    printf("sum = %.0f\n", factsum(n));
        
    return 0;
}

/* 你的代码将被嵌在这里 */
// 递归实现 n 的阶乘
double fact(int n) {
    return n == 0 ? 1 : n * fact(n - 1);
}

// 实现阶乘和
double factsum(int n) {
    double sum = 0; // 使用 double 类型避免精度丢失
    for (int i = 1; i <= n; i++) {
        sum += fact(i); // 累加每个数的阶乘
    }
    return sum; // 返回阶乘和
}


相关推荐
野生的编程萌新几秒前
从冒泡到快速排序:探索经典排序算法的奥秘(二)
c语言·开发语言·数据结构·c++·算法·排序算法
Brookty3 分钟前
【Java学习】锁、线程死锁、线程安全2
java·开发语言·学习·java-ee
HalvmånEver6 小时前
在 C++ :x86(32 位)和 x64(64 位)的不同
开发语言·c++·学习
艾伦~耶格尔10 小时前
【数据结构进阶】
java·开发语言·数据结构·学习·面试
Janspran11 小时前
嵌入式linux学习 -- 进程和线程
linux·运维·学习
谱写秋天11 小时前
FreeRTOS中断服务程序(ISR)详细讲解
c语言·freertos·isr
rannn_11112 小时前
【Javaweb学习|黑马笔记|Day1】初识,入门网页,HTML-CSS|常见的标签和样式|标题排版和样式、正文排版和样式
css·后端·学习·html·javaweb
lingggggaaaa13 小时前
小迪安全v2023学习笔记(六十一讲)—— 持续更新中
笔记·学习·安全·web安全·网络安全·反序列化
不太可爱的叶某人14 小时前
【学习笔记】Java并发编程的艺术——第6章 Java并发容器和框架
java·笔记·学习
GUET_一路向前14 小时前
【C语言】解释形参void *data用法
c语言·开发语言·通用指针