c语言程序问题输入输出

计算s=(1!)+(1!+2!)+…+(1!+…+n!)。n由用户输入,小于10。 设计:函数h1(n)计算n的阶乘;函数h2(m)计算1!+2!+…+m!的累加运算。在主函数中调用h2()函数,h2()函数中调用h1()函数来实现累加。
输入
输入一个自然数。
输出
输出阶乘累加和
难度

输入示例
3
输出示例
13


#include <stdio.h>
int    h1(int n)
{    
    int m=1,x;
    for(x=1;x<=n;x++)
    {
        m *= x;
    }
    return m;
}
int main()
{
    int    i,j,m,n;
    scanf("%d",&n);
    m=0;
    for(j=1;j<=n;j++)
    {
        for(i=1;i<=j;i++)
        {
            m+=h1(i);
        }
    }
    printf("%d\n",m);
    return 0;
}