编程序按下列公式计算e的值(精度为1e-6) e=1+1/1!+1/2!+1/3!+……1/n!

求高手帮我弄弄这C语言... 求高手帮我弄弄这C语言 展开
百度网友3ebf96a
推荐于2016-12-01 · TA获得超过368个赞
知道小有建树答主
回答量:81
采纳率:0%
帮助的人:107万
展开全部
long fact(int n)
{
if (n == 1 || n == 0)
{
return 1;
}
else
{
tmp = fact(n-1); // 递归算法求阶乘
return n*tmp;
}
}

int main()
{
int i;
double exp = 0.0; // exp 用于存储 e 值
for(i = 1;;i++)
{
tmp = fact(i - 1);
exp = exp + tmp;
if (tmp < 1E-6) // 判断精度
break;
}

return 0;
}
追问
求您留个联系方式。QQ什么的
追答
QQ:944096506
tmp = fact(i - 1); 这句改为 double tmp; tmp =1.0 / fact(i - 1);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式