某人为计算n!(0<n<=12)编写了下面的函数过程:Private Function fun(n As Integer)As LongD

12 查阅

某人为计算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

EndFunction

在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3种是正确的,错误的方案是

A.把P=1改为P=n

B.把For k=n-1 To 2 Step-1改为For k=1 To n-l

C.把For k=n-1 T02 Step-1改为Fork=1 To n

D.把For k=n-1 To 2 Step-l改为FOr k=2 To n

参考答案:

B解析:题f中的错误在于求n!,却少乘了n,选项B也犯了同样的错误,所以答案选B。

计算机二级