房天下问答 >业主生活>其他> 问题详情

关于C语言求一串阶乘的和,求高手帮我看一下!

求:1!+2!+3!+...+20!。#include<stdio.h>void main(){ long i=1,sum=0;int m;for(m=1;m<=20;m++) { i=i*m;sum=sum+i;} Printf("sum=%ld\n",sum);}这个程序应... 展开
笔记本家园|2011-01-11 01:00

其他答案

dwb_lps

如果对于小数字来说,这个代码没有问题。但在这个题中有问题。因为20以内的阶乘相加的结果远远超过长整形的位数。这个代码运算结果为268040729,但用科学计数法表示是2.56133e+18,确切的结果是2561327494111820313。也就是说,当长度超过时结果就会不正确。用浮点型是为了用科学计数法表示,科学计数法前面的那个2.56133是浮点型。而m可以不用float定义。如果想要得出精确 展开
2011-01-11 03:14
来自北京市

免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关于我们网站合作联系我们招聘信息房天下家族网站地图意见反馈手机房天下开放平台服务声明加盟房天下
Copyright © 北京搜房科技发展有限公司
Beijing SouFun Science&Technology Development Co.,Ltd 版权所有
违法信息举报邮箱:jubao@fang.com
返回顶部
意见反馈