求自然对数的程序问题
程序代码:#include<stdio.h>
long abc(int n)
{
long s;
if(n==0)
n=1;
else
s=n*abc(n-1);
return s;
}
main()
{
double e,t;
int i;
e=1;
i=1;
do
{ t=e;
e=e+1.0/abc(i);
i=i+1;
}while((e-t)>1E-6);
printf("%f\t",e);
getchar();
}输出为1.000000 不能得到正确答案是什么问题?







