名人说:不要失去信心,只要坚持不懈,就终会有成果的。——钱学森
进度:C/C++语言100题练习计划专栏,目前9/100
🐼本篇内容简介:一、问题呈现-->二、源码实现-->三、输出结果展示-->四、流程分析
🥇C语言100题练习专栏计划:目的:巩固练习C语言,增强上机、动手实践能力,交流学习!题量随时间的增加会有所增加。
一、问题呈现
Problem Description
求1!+2!+3!+…+20!的和
Input
无
Output
1到20的阶乘之和(以指数形式输出实数)
Sample Input
无
Sample Output
2.561327e+18
二、源码实现
#include<stdio.h> //引入标准输入输出头文件
int main(){ //定义主函数
float n,s=0,t=1; //声明三个浮点型变量,分别赋值为0,0,1
for(n=1;n<=20;n++){ //用n控制循环,从1到20
t *= n; //每次循环,将t乘以n,并赋值给t,相当于计算n的阶乘
s += t; //每次循环,将s加上t,并赋值给s,相当于计算阶乘之和
}
printf("1+2!+3!...+20!=%e\n",s);//C语言中%e:以指数形式输出实数,输出s的值
return 0; //返回0表示程序正常结束
}
三、输出结果展示
1.输出结果:
1+2!+3!...+20!=2.561327e+18
--------------------------------
Process exited after 0.2647 seconds with return value 0
请按任意键继续. . .
四、流程分析
1.读题
求1!+2!+3!+…+20!的和 关键点:①阶乘 ②的和
2.构思
根据第关键点阶乘,阶乘(factorial)是所有小于及等于该数的正整数的积。1!=1,2!=2 * 1,3!=3 * 2 * 1,n!=n *(n-1)! 然后再根据的和,说明不止一个数,求和,我们可以使用for循环,一个for循环即可。
3.代码
把你所思所想,以代码的形式,写出来。
Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)
如果对大家有帮助的话,希望大家能多多点赞+关注!这样我动力会更足哦! ღ( ´・ᴗ・` )比心
友情提示:第一篇为试看内容,关注博主就可以免费观看本专栏全部内容!(*^ ▽ ^ *)