当前位置: 首页 > article >正文

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

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

一、题目描述 ⭐️

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、代码(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; // 返回阶乘和
}

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/576938.html

相关文章:

  • docker指令整理
  • 图片分类实战:食物分类问题(含半监督)
  • 【统计至简】【入门测试3】协方差矩阵的Cholesky分解
  • Qwen架构与Llama架构的核心区别
  • Sass进阶之路:@forward 的可见性控制与变量覆盖
  • Linux 配置静态 IP
  • spring websocket 介绍
  • create_react_agent(model, tools) 和 graph_builder.add_conditional_edges 的联系和区别
  • 基于Django的协同过滤算法养老新闻推荐系统的设计与实现
  • 初识Linux(13) 由基础IO知识简易封装stdio.h中的FILE
  • Unity AI 技术浅析(二)
  • 【时时三省】(C语言基础)赋值语句
  • 大白话 CSS 中transform属性的常见变换类型(平移、旋转、缩放等)及使用场景
  • c#面试题整理
  • QT登录系统界面
  • 一周热点-文本生成中的扩散模型- Mercury Coder
  • 中级网络工程师面试题参考示例(2)
  • Java停车平台高并发抢锁技术方案设计 - 慧停宝开源停车管理平台
  • 【奇点时刻】通义千问开源QwQ-32B技术洞察报告(扫盲帖)
  • 2490小蓝的括号串