c语言cycle解决阶乘和问题

img


求助!!,

#include <stdio.h>

void cycle(int n)
{
    int i;
    double s = 0;
    double r=1;
    for (i=1;i<=n;i++)
    {
        r*=i;
        s+=r;
    }
    printf("单循环:%g",s);
}

void cycle2(int n)
{
    int i,j;
    double s=0,r;
    for (i = 1;i<=n;i++)
    {
        r = 1;
        for(j=1;j<=i;j++)
            r*=j;
        s+= r;
    }
    printf("双重循环:%g",s);
}


int main()
{
    int n;
    scanf("%d",&n);
    cycle(n);
    cycle2(n);
    
    return 0;
}