c语言编程 求n到m阶乘之和 n!+(n+1)!+…+m!

 我来答
百度网友fc027fc
2015-04-01 · TA获得超过1.1万个赞
知道大有可为答主
回答量:3160
采纳率:83%
帮助的人:787万
展开全部
#include<stdio.h>
#include<stdlib.h>

unsigned long long jc(unsigned long long n)
{
     if(n==0 || n==1) return 1;
     return n*jc(n-1);
}

int main()
{
    int n,m;
    unsigned long long res=0;
    while(1){
        printf("ÇëÊäÈëÁ½¸öÕûÊýnºÍm£¨0<=n<=m<=10£©:\n");
        scanf("%d %d",&n,&m);
        if(n==-1 && m==-1) break;
        int i;
        res=0;
        for(i=n;i<=m;i++)
        {
            res= res+jc(i);
        }
        printf("%u\n",res);
    }
    system("pause");
    return 0;
}

dagewxw
2015-04-01 · TA获得超过5929个赞
知道大有可为答主
回答量:3523
采纳率:67%
帮助的人:980万
展开全部
#include <stdio.h>
int sum(int n, int m) {
    int i =n;
    int sum = 0;
    if (n > m)
        return -1;
    else {
        for(; i <=m; i++) {
            sum += jiecheng(i);
        }
    }
    return sum;
}
int jiecheng(int n) {
    int i = 1;
    int muti= 1;
    if (n >= 1) {
        for (;i <= n; i++) {
            muti *= i;
        }
    }
    return muti;
}
int main() {
    printf("%d\n",sum(2, 3));
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冉MLiang
推荐于2018-05-06 · TA获得超过222个赞
知道小有建树答主
回答量:393
采纳率:71%
帮助的人:172万
展开全部

阶乘用迭代,然后循环相加即可。

如图(注意:输入两个数的时候用空格隔开):

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阔气克克
2015-04-01 · TA获得超过485个赞
知道小有建树答主
回答量:527
采纳率:0%
帮助的人:470万
展开全部
n和m的值有没有范围,对于运行时间有没有要求?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式