问题 填空题

编写如下通用过程:
Sub proc(By Val num As Long,ByRef ren As Long)
Dim k As Long
K = 1
num=Abs(num)
Do While num
k= k *(num Mod 10)
num=num\ 10
Loop
ren=k
End Sub
在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Command1 Click()
Dim n As Long, r As Long
n=InputBox("请输入一个整数")
n = CLng(n)
proc n,r
Print r
End Sub
程序运行后,单击命令按钮,在输入对话框中输入345,输出结果是 【15】

答案

参考答案:60

解析:

[分析]: 过程proc有两个参数,其中第一个参数使用的是传值方式(带有关键字ByVal),第二个参数使用的是引用方式(带有关键字ByRef,可以省略)。该过程的功能是,通过取模(Mod)和整除(\)运算符求出一个整数的各位数字,将这些数字相乘,并将乘积赋给参数ren。在事件过程中,用InputBox函数输入一个数,然后调用过程proc,如果输入的数是345,则结果为3×4×5 =60。注意,调用语句“proc n,r”有两个实参,其中r用来存放过程的返回值。Function过程通常有一个返回值,Sub过程也可以有返回值,并且可以有多个返回值,这些返回值放在形参中。在这种情况下,存放返回值的形参必须使用传地址方式,否则得不到正确结果。

单项选择题 A1/A2型题
单项选择题