A-A+

编写如下通用过程: Sub proc(By Val num As Long ByRef re

2022-08-12 20:14:10 问答库 阅读 197 次

问题详情

编写如下通用过程: 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,输出结果是【 】。


请帮忙给出正确答案和分析,谢谢!

参考答案

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

考点:过程