阶乘求和 C语言实现求阶乘之和 三种方法实现 先阶乘再累加

article/2025/9/12 21:50:50

题目:

此处题目是以1-20的阶乘之和举例

方法一:使用一层for循环实现 代码简单快捷容易理解

代码示例如下:

#include<stdio.h>
int main()
{double a = 1, sum = 0;//因为最后值可能会超出int所能接收的范围 故用doubleint n, i;scanf("%d", &n);//注意scanf_s和scanf的使用场景for (i = 1; i <= n; i++){a = a*i;sum = sum + a;}printf("%lld", sum);//double的输入格式要对return 0;
}

运行结果如下:

方法二:使用两层for循环嵌套

代码示例如下:

//需要注意对于1-20阶乘结果已经超出了int能够接收的范围
//   故用double类型
//1.遍历获取每一个数字[1-20]
//2.对每一个数进行阶乘
//3.对每个数字的阶乘结果进行求和
int main()
{double total_sum = 0.0;for (int i = 1; i <= 20; i++)//i控制求和{//i=8  ---> 8*7*6*....*1double single_num = 1.0;for (int j = i; j > 0; j--){single_num *= j;//j控制阶乘}total_sum += single_num;}printf("%lf\n", total_sum);return 0;
}

运行结果如下:

 

方法三:函数递归实现

#include<stdio.h>
long int fac(unsigned int n)  //定义为long int 型,避免溢出
{long int f;if (n == 0) return;        //当n=0是,递归法到尽头,依次返回函数值。f = fac(n - 1) * n;return (f);               //返回最后一次函数值,即单次阶乘的最后结果
}int main()
{unsigned int n;long int s =0;int i;scanf_s("%d", &n);//此处注意scanf_s与scanf的使用场景for (i = 1; i <= n; i++)  s += fac(i);    //以循环控制阶乘的和。fac函数每一次的返回值作为s的自加值printf("%ld", s);return 0;
}
#include<iostream>
#include<cmath>double fac(double t)
{if (t == 1)return 1;elsereturn  t * fac(t - 1);
}int main()
{using namespace std;double i, n, sum = 0;cin >> n;if (n > 14)return 0;for (i = 1; i < n; i++){double b = fac(i);sum += b;}cout << "sum =" << sum << endl;printf("%lf\n", sum);return 0;
}

代码运行结果如下:

 

编者注:以上对本小题的代码编写的多种方法,欢迎大家收藏借鉴并转发;

               以上代码仅供参考,如有问题欢迎大家在留言区批评指正;

               版权所有,翻印必究,如有雷同纯属巧合,转载请注明出处。

               By CRH380AJ2808 2022.04.26
————————————————


版权声明:本文为CSDN博主「CRH380AJ2808」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/JH13thpig/article/details/124361837


http://chatgpt.dhexx.cn/article/0qnbLh7i.shtml

相关文章

C语言 求n的阶乘及阶乘和

题目 随机输入一个整数n&#xff0c;求出n的阶乘 思路 阶乘&#xff0c;每次乘的数依次递增&#xff0c;直到第n个数&#xff0c;因此我们可以设置一个变量result&#xff0c;用于储存每一次的运算结果。且每次乘的数都依次递增&#xff0c;可以使用for循环语句&#xff0c;…

C语言:运用函数实现阶乘

第一次写的时候&#xff0c;输出一直输出的为初始值&#xff0c;没有输出阶乘后的值&#xff0c;找了好久问题才发现&#xff0c;下次一定注意 编程时要考虑到0和1的阶乘 代码如下&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include<stdio.h>int JC(int num) {in…

【C语言】求阶乘与阶乘之和

中学我们都学习了阶乘的求法&#xff0c;比如要求整数&#xff4e;的阶乘&#xff0c;则&#xff4e;!n(n-1)(n-2)…21。现在有两个问题&#xff0c;要用&#xff23;语言编写程序求&#xff4e;的阶乘&#xff0c;以及求1!2!3!…n!&#xff0c;该如何解决呢&#xff1f;   …

【C语言】阶乘实现

&#x1f389;博客主页&#xff1a;Luo-Kuang-何 &#x1f389;座右铭&#xff1a;一起走向人生巅峰的路上&#x1f601; &#x1f389;学习进度&#xff1a;【C语言】 &#x1f389;博客声明&#xff1a;我将尽我所能&#xff0c;用心写好每一份博客&#xff0c;让更多小伙伴能…

C语言入门——计算n的阶乘

目录 一、问题 二、问题分析 三、代码实现 四、运行结果 一、问题 通过c语言编程计算n的阶乘。 二、问题分析 1、首先明确n的阶乘在数学中怎么算&#xff1a;1*2*……*(n-1)*n n! 2、怎么用c语言来实现呢&#xff1f; &#xff08;1&#xff09;首先要做的是要有这n个数…

C语言 求阶乘和

法一:利用for循环 输入n 后,我们要计算1!2!...n!,我们最容易想到的,也会写的是某单个数的循环,如 int n 5; //当输入n 5时 int i 0; int num 1;//循环总和 int renum 0;//累加总和 for(i 1; i < n; i) // 5 的阶乘 1 * 2 * 3 * 4 * 5 {num * i; } 那么对于一系列的阶…

五种C程序计算阶乘方法 c语言实现1到n的阶乘1*2*3*.....*n的累乘计算,使用不同方法实现,五种计算阶乘的方法

题目&#xff1a; 题目分析&#xff1a; 首先要清楚阶乘定义&#xff0c;所谓 n 的阶乘&#xff0c;就是从 1 开始乘以比前一个数大 1 的数&#xff0c;一直乘到 n&#xff0c;用公式表示就是&#xff1a;1234…(n-2)(n-1)nn! 具体的操作: 利用循环解决问题&#xff0c;设循环变…

毕设 深度学习卷积神经网络的花卉识别

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 今天学长向大家介绍一个机器视觉项目 基于深度学习卷积神经网络…

AlexNet实现花卉识别

AlexNet实现花卉识别 本人水平有限&#xff0c;如有错误&#xff0c;欢迎指出&#xff01; 1. AlexNet 1.1 简介 ​ AlexNet是由UToronto的Alex Krizhevsky、Hinton等人在2012年提出的8层神经网络模型&#xff0c;并获得了ILSVRC12挑战赛ImageNet数据集分类任务的冠军&#x…

基于CNN的花卉识别

程序和数据集地址&#xff1a;https://download.csdn.net/my 数据集准备&#xff1a; 如图是五种类别的花卉数据集&#xff0c;分别放在五个文件夹。 训练神经网络模型文件在CNN中 定义数据集地址和模型保存地址程序如下&#xff08;我用的是‘\’&#xff0c;建议用‘/’表示…

【实战】tensorflow 花卉识别

文章目录 实战&#xff1a;花卉识别数据集网络模型可视化画卷积图&#xff1a; 实战&#xff1a;花卉识别 数据集 数据集&#xff1a;tensorflow 花卉识别 该数据集是 分为 5 个类别 [‘雏菊’, ‘蒲公英’,‘玫瑰’,‘向日葵’, ‘郁金香’] 网络模型 可视化 画卷积图&#x…

毕业设计-基于深度学习的花卉识别分类

目录 前言 课题背景和意义 实现技术思路 一、花卉识别相关理论基础 二、基于 ResNeXt 和迁移学习的花卉种类识别 三、基于 EfficientNet 和迁移学习的花卉种类识别 实现效果图样例 最后 前言 &#x1f4c5;大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后…

毕业设计 - 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 今天学长向大家介绍一个机器视觉项目 基于深度学习卷积神经网络…

【毕业设计】深度学习花卉识别系统 - 卷积神经网络 机器视觉

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 &#x1f525; Hi&#xff0c;大家好&#xff0c;这里是丹成学长…

图片识别,人脸识别,植物识别,花卉识别,签到小程序,借助百度AI智能识别功能实现图片识别,人脸识别小程序

一&#xff0c;人脸签到效果图 我们做人脸识别签到&#xff0c;其实就是要拿识别的人脸和数据库里的人脸对比&#xff0c;相识度大于一定的值&#xff0c;就可以判定成功。 如我们识别的结果是98.295%&#xff0c;所以这里就可以认定为签到成功 1-1&#xff0c;效果图 1-1-…

基于 Tensorflow 2.x 从零训练花卉图像识别模型

一、数据集准备 本篇文章使用数千张花卉照片作为数据集&#xff0c;共分为5个分类&#xff1a;雏菊&#xff08;daisy&#xff09;、蒲公英&#xff08;dandelion&#xff09;、玫瑰&#xff08;roses&#xff09;、向日葵&#xff08;sunflowers&#xff09;、郁金香&#xf…

基于深度学习的花卉检测与识别系统(YOLOv5清新界面版,Python代码)

摘要&#xff1a;基于深度学习的花卉检测与识别系统用于常见花卉识别计数&#xff0c;智能检测花卉种类并记录和保存结果&#xff0c;对各种花卉检测结果可视化&#xff0c;更加方便准确辨认花卉。本文详细介绍花卉检测与识别系统&#xff0c;在介绍算法原理的同时&#xff0c;…

毕设 深度学习花卉识别 - python 机器视觉 opencv

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提…

怎么拍照识别植物的名称呢?教大家一个识别小妙招

怎么通过拍照片的方式来识别图片中的植物名称呢&#xff1f;在春季的时候&#xff0c;很多家长会选择带着小朋友去春游&#xff0c;去踏春&#xff0c;正是万物生长的季节&#xff0c;会萌生出很多新的植物。有的植物长相艳丽&#xff0c;很是好看&#xff0c;想要回家养一点&a…

接入植物识别功能快速识别万种植物花卉

作者&#xff1a;才能我浪费99 1.功能描述&#xff1a; 该请求用于识别一张图片&#xff0c;即对于输入的一张图片&#xff08;可正常解码&#xff0c;且长宽比较合适&#xff09;&#xff0c;输出植物识别结果。近期植物识别进行了能力升级——模型升级&#xff0c;Top1准确…