用c语言求解累加问题

求下列算式的值

f=1-1/2!+1/3!-1/4!+....+1/n!,

直到最后一项绝对值不小于le-5(该项不累加),用while函数解答

定义个阶乘函数,然后奇偶切换正负号

int jc(int n)
{
    int m = 1;
    for(int i=1;i<=n;i++)
        m*=i;
    return m;
}

void main()
{
    double d = 1,f = 0,i=1;
    while(d > 1e-5)
    {
        if(i%2==0)
            f += d*-1;
        else
            f += d;
        i++;
        d = 1.0/jc(i);
    }
    printf("%lf", f);
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m