原题链接:[编程入门]阶乘求和
解题思路:这题主要是求每个数的阶乘以及阶乘求和,这个想必对各位大佬来说肯定是轻而易举,但对于我这个新人小白来说还需思考一会儿,想出来的也不是最简洁的算法……一开始我把变量都定义成int型,上传了几次都是错的,折腾了好久,把两个变量改成long long型才成功……原因应该是int型容不下变量的大小了吧。
注意事项:变量要定义成long long型,输出的时候记得要用“%lld”来输出!
参考代码:
#include <stdio.h> int main() { long long Sn,m; int n,i,j; while((scanf("%d",&n)==1) && n>0 && n<=20) { Sn=1; for(i=0;i<n-1;i++) { m = 1; for(j=n-i;j>0;j--) { m=m*j; } Sn=Sn+m; } printf("%lld\n",Sn); } return 0; }
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复