某人为计算n!(0<n≤12)编写了下面的函数过程: Private Function Fun(n As Integer) As Long Dim p As Long p=1 For k=n-1 To 2 Step-1 p=p*k Next k fun=p End Function 在调试时发现该函数过程产生的结果是错误的,程序需要修改。下列的修改方案中有三种是正确的,错误的方案是
A.把p=1改为p=n B.把For k=n-1 To 2 Step-1改为For k=1 To n-1 C.把For k=n-1 To 2 Step-1改为For k=1 to n D.把For k=n-1 To 2 Step-1改为For 2 To n