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

admin2020-02-27  35

问题 某人为计算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 Funotion
    在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3种是正确的,错误的方案是(  )。

选项 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 k=2 To n

答案B

解析 原程序的错误在于没有把n的值乘进去。而B选项中把For k=n—1 To 2 Step一1改为For k=1 Ton—1,依然没有把n乘进去。
转载请注明原文地址:https://jikaoti.com/ti/eSx0FFFM
0

相关试题推荐
最新回复(0)