极难杂症
#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
是什么原因呢
2019-03-22 15:20
2019-03-22 15:56
2019-03-22 17:44
2019-03-22 18:12
2019-03-22 18:15
2019-03-22 18:15