程序编写。用for的循环结构

求1+2!+3!+……+20!的和。(考察for的循环结构)

long sum = 0;
for(int i = 1; i <= 20; i++)
{
sum+= factorial(i);
}
Console.WriteLine(sum);

    public static long factorial(int n)
    {
        if (n == 0 || n == 1)
        {
            return 1;
        }
        else
        {
            return n * factorial(n - 1);
        }
    }

!是啥?

int sum;
for(int i =1;i<=20;i++){
sum+=i;
}