搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 极难杂症
标题:
极难杂症
只看楼主
MOON奏鸣曲
等 级:
新手上路
帖 子:13
专家分:0
注 册:2018-3-18
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:5
极难杂症
#include<stdio.h>
double fact(int n){
return(n==0?1:n*fact(n-1));
}
int main(void){
double sum=0;
int i=1;
for(;i<21;i++){
printf("%lf\n",fact(i));
sum+=fact(i);
}
printf("%lf",sum);
}
使用double类型计算1到20的阶层和会失真13
是什么原因呢
搜索更多相关主题的帖子:
double
int
sum
printf
原因
2019-03-22 15:20
星泪成寒
等 级:
黑侠
威 望:
6
帖 子:75
专家分:539
注 册:2013-5-19
第
2
楼
得分:7
google一下double类型在内存中存储机制就知道了
2019-03-22 15:56
MOON奏鸣曲
等 级:
新手上路
帖 子:13
专家分:0
注 册:2018-3-18
第
3
楼
得分:0
回复 2楼 星泪成寒
请问有相关链接么,我用不了谷歌
2019-03-22 17:44
zbjzbj
来 自:郑州
等 级:
贵宾
威 望:
52
帖 子:620
专家分:3020
注 册:2011-4-22
第
4
楼
得分:7
回复 3楼 MOON奏鸣曲
你能用了百度吗?
2019-03-22 18:12
wp231957
来 自:神界
等 级:
版主
威 望:
422
帖 子:13681
专家分:53296
注 册:2012-10-18
第
5
楼
得分:7
计算阶乘不应该使用double 如果一定要计算大数的阶乘比如50 哪就要用到大数库 c 里貌似没有大数库
DO IT YOURSELF !
2019-03-22 18:15
星泪成寒
等 级:
黑侠
威 望:
6
帖 子:75
专家分:539
注 册:2013-5-19
第
6
楼
得分:0
https://zh.
2019-03-22 18:15
6
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-493731-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.287731 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved