
答案
#include (1分)
/* 递归函数5分 */
long factorial(int n) (1分)
{
if (n == 1)
return n; (2分)
else
return n * factorial(n-1); (2分)
}
/* 主函数8分,其中:变量定义正确2分,循环正确得2分,函数调用格式正确2分,输出正确2分*/
void main( )
{
double e = 1.0;
for (int i=1; i<=20; i++)
{
e += 1/(double)factorial(i);
}
printf("%lf\n",e);
}