
用C语言/*求1+2!+3!+...+20!的和
发布日期:2021-05-08 15:47:17
浏览次数:23
分类:精选文章
本文共 721 字,大约阅读时间需要 2 分钟。
①最开始的想法
#includeint main(){ int n,j; long tem,sum=0;//最开始想到的是循环套嵌。 for(n=1;n<=20;n++)//第一个循环,控制项次(20),控制每一项的乘积 { tem=1;//前面没有想到把它每次小循环前初始化,参考了一个博主的恍然大悟。 for(j=1;j<=n;j++)//第二个循环,在第一个循环的约束下将每一项分别累积。 { tem=tem*j//每个数相乘的累积实际上和每个数相加的累积一样的原理,运算式不同而已。 } sum=sum+tem; } printf("1!+2!+3!+…+20!=%d\n",sum); return 0;}
②很多博主和书本上的答案提供了更简洁的方法(聪明)
#includeint main(){ int n; long tem=1,sum=0; for(n=1;n<=20;n++) { tem=tem*n;//因为原题中下一项其实是上一项(设tem)乘以(项次加一,项次设为n),即为t=t*(n+1) //在本式中,每增加一个项次,n自动累加再与tem相乘,每次相乘完,都代表原题中对应的项的值 sum=sum+tem;//将每次乘完的值加到总和sum中,即可得到答案。 } printf("1!+2!+3!+…+20!=%d\n",sum);//如果要用科学记数法发将上面的long改成double,%d改成想要的,比如%21.11e即可 return 0;}
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2025年03月25日 16时48分23秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Java之封装,继承,多态
2021-05-09
wait()与notify()
2021-05-09
使用js打印时去除页眉页脚
2021-05-09
Spring security OAuth2.0认证授权学习第二天(基础概念-RBAC)
2021-05-09
ORA-00904: "FILED_TYPE": 标识符无效
2021-05-09
数据仓库系列之维度建模
2021-05-09
Scala教程之:函数式的Scala
2021-05-09
java中DelayQueue的使用
2021-05-09
线程stop和Interrupt
2021-05-09
Android中定时执行任务的3种实现方法
2021-05-09
nodejs中npm常用命令
2021-05-09
基于Vue2.0+Vue-router构建一个简单的单页应用
2021-05-09
基于vue2.0实现仿百度前端分页效果(二)
2021-05-09
JS魔法堂:函数重载 之 获取变量的数据类型
2021-05-09
时间序列神器之争:Prophet VS LSTM
2021-05-09
SpringBoot中关于Mybatis使用的三个问题
2021-05-09
MapReduce实验
2021-05-09
Leaflet 带箭头轨迹以及沿轨迹带方向的动态marker
2021-05-09
java大数据最全课程学习笔记(1)--Hadoop简介和安装及伪分布式
2021-05-09