新手请教:关于数值较大的数的输出
程序代码:
#include<stdio.h> main() { long double s1=1,s2=0; int i,y; scanf("%d",&y); for(i=1;i<=y;i++) { s1*=i; s2+=s1; } printf("%e",s2); getch(); }例如上面这个阶乘和的程序只能输出1!加到170!的数
1!+2!······+170!=7.300360e+306
之后就加不了了
请教:
如果很无聊想加到更大的数怎么办
就比如从1!加到10000!那要怎么改?
很苦恼
目前我知道long double表示的值是最大的了,
e能以科学计数法表示很大的数;
但是都没法实现。
[ 本帖最后由 jiangwu10057 于 2009-10-25 09:37 编辑 ]