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; // 返回阶乘和
}


相关推荐
陈天伟教授几秒前
基于学习的人工智能(7)机器学习基本框架
人工智能·学习
松涛和鸣3 分钟前
从零开始理解 C 语言函数指针与回调机制
linux·c语言·开发语言·嵌入式硬件·排序算法
Z***G4791 小时前
网络爬虫学习:借助DeepSeek完善爬虫软件,实现模拟鼠标右键点击,将链接另存为本地文件
爬虫·学习·计算机外设
我命由我123452 小时前
微信开发者工具 - 模拟器分离窗口与关闭分离窗口
前端·javascript·学习·微信小程序·前端框架·html·js
DKPT2 小时前
ZGC和G1收集器相比哪个更好?
java·jvm·笔记·学习·spring
Main. 243 小时前
从0到1学习Qt -- 常见控件之显示类控件
qt·学习
无限进步_3 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
e***19353 小时前
爬虫学习 01 Web Scraper的使用
前端·爬虫·学习
星轨初途5 小时前
数据结构排序算法详解(5)——非比较函数:计数排序(鸽巢原理)及排序算法复杂度和稳定性分析
c语言·开发语言·数据结构·经验分享·笔记·算法·排序算法
f***01935 小时前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++