编程求1!+2!+3!+……+N!(用while)

 我来答
Poseidon0922
2010-11-23 · TA获得超过389个赞
知道小有建树答主
回答量:109
采纳率:0%
帮助的人:99.9万
展开全部

程序如下,仅供参考

#include <stdio.h>

int main(void) {

    int N, i;

    int n, tmp, sum = 0;

    printf("Please input a integer: ");

    scanf("%d", &N);

    i = N;

    while (i > 0) {          

        n = i--;

        tmp = 1;

        while (n >= 0) {     // 计算阶乘

            if (n == 0) {

                tmp = tmp;

            } else {

                tmp *= n;

            }

            n--;        

        }

        sum += tmp;          // 计算阶乘的和

    }

  

    printf("1!+2!+...+%d! = %d", N, sum);

    

    system("pause");

    return 0;

} // 至此结束

【认真回答,呈请采纳】

jayhou1986
2019-04-19 · TA获得超过1511个赞
知道小有建树答主
回答量:586
采纳率:81%
帮助的人:417万
展开全部
#include <stdio.h>
int fun(int n) {
    int i = 0,j;
    int fact;
    int sum = 0;
    while (++i <= n) {
        j = 1;
        fact = 1;
        while (++j <= i) {
            fact *= j;
        }
        sum += fact;
    }
    return sum;
}
int main() {
    printf("%d\n", fun(10));
}

完整代码,放入编译器运行看结果,调用处可改变传入值,不懂的地方,留言于我

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
laochengaccp
2010-11-23 · TA获得超过665个赞
知道小有建树答主
回答量:263
采纳率:0%
帮助的人:205万
展开全部
int i = 1 ;
int num = 0 ;
while (i <= 4) {
int j = 1 ;
int temp = 1 ;
if(i > 0) {
while (j <= i) {
temp = temp * j ;
j++ ;
}
}
num = num + temp ;
i++ ;
}

外面的while循环中的i <= 4中的4表示N,你也可以传参数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式