一段C语言函数求阶乘的代码,不理解能请教请教吗

img


int Fac2(int n)
{
    if(n<=1)
    return 1;
    else
        return n*Fac2(n-1);
}
int main()
{
    int ret = 0;
    int n = 0;
    scanf("%d",&n);
    ret = Fac2(n);
    printf("%d\n",ret);
    return 0;
}

阶乘是怎么在里面执行的┭┮﹏┭┮

递归啊