问题 单项选择题

有如下的一个函数过程:
Function fn(ByVal num As Long)
Dim k As Long
k=1:num=Abs(num)
Do While nuin
k=k*(num Mod 10)
num=num\10
Loop
fn=k
End Function
通过以下事件过程调用该函数,程序运行后,在输入对话框中输入数字“123”,则运行结果为( )。
Private Sub Command1_Click()
Dim n As Long
Dim r As Long
n=InputBox("请输入一个数值")
n=CLng(n):r=fn(n)
Print r
End Sub

A.12

B.6

C.3

D.1

答案

参考答案:B

解析: 本题考查函数功能分析。定义函数过程fn时,在参数前加上ByVal表明参数为传值调用。函数fn的主要功能为取出num的每一位,进行累计相乘,然后返回结果。

单项选择题
单项选择题