long sum 声明 sum 是 长整型变量(long int sum).=0L 是初始化,给 sum 赋初值 长整型 数值 0。 0L 是 长整型数值 0.与声明 int sum=0; 是一回事。
没明白你想问什么,sum1 = fact(a) + fact(b) + fact(c);是表示分别计算这三个数的阶乘之和放到sum1中,“为什么要对long阶乘运算”就不清楚你在问什么了。