问题(求1到10阶乘之和)我写的程序出不了结果。

有大佬看看是哪里出错了,孩子快被逼疯了
求1到10阶乘之和
#include<stdio.h>

int main()
{
int sum,s,i,j;
sum=0,s=10;//从大到小计算。
while(s>0)
{i=s;
while(i<=1)
{j=1;j=j*i;i--;}//计算i的阶乘结果为j。
sum=sum+j;
s--;}
printf("%d\n",sum);//计算阶乘之和。
printf("成功");
return 0;
}

代码修改如下:

#include<stdio.h>

int main()
{
    int s,i;
    long long j;  //修改
    long long sum = 0;
    sum=0;s=10;//从大到小计算。
    while(s>0)
    {
        i=s;
        j=1; //  修改  j=1放在这里
        while(i>=1) // 修改
        {
            j=j*i;
            i--;
        }//计算i的阶乘结果为j。
        sum=sum+j;
        s--;
    }
    printf("%lld\n",sum);//计算阶乘之和。
    printf("成功");
    return 0;
}

while(i>=1)