求自然对数的程序问题
程序代码:
#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 不能得到正确答案是什么问题?