用C语言写8!+9!+10!

运行结果错误,电脑没有报错,有谁可以帮忙写一个程序,指点指点我。

你的一个阶层运算完,没有重置,后面sum=8的阶层继续乘,所以有点问题,我改了一下,希望可以帮到你
#include<stdio.h>
#include<stdlib.h>

void main() {
    int sum = 1;
    int i,j,n = 1,m = 1;
    for (i = 8; i <= 10; i++) { // 遍历 8 9 10
        for (j = i; j > 0; j--) { // 分别计算阶乘
            n = m * j ;//
            m = n;
        }
        sum += n;
        n=1; m=1;//一个阶层运算完,重置 m 和 n 的值 
    }
    sum = sum-n;//多加了一个 n,也就是多加了一个1 
    printf("8!+9!+10!= %d \n", sum);
}
    #include<stdio.h>
    #include<stdlib.h>

    void main() {
        long sum = 1;
        for (int i = 8; i <= 10; i++) { // 遍历 8 9 10
            for (int j = i; j > 0; j--) { // 分别计算阶乘
                sum = sum * j ;
            }
        }
        printf("8!+9!+10!= %d \n", sum); // 53094139822080000
    }


    public static void main(String[] args) {
        long sum = 1;
        for (int i = 8; i <= 10; i++) { // 遍历 8 9 10
            for (int j = i; j > 0; j--) { // 分别计算阶乘
                sum = sum * j ;
            }
        }
        System.out.println(sum);
    }