问题
单项选择题
单击一次命令按钮后,下列程序的执行结果是() Private Sub Command1_Click() s=P(1) + P(2) + P(3) + P(4) Print s End Sub Public Function P(N As Integer)Static Sum For i=1 To N Sum=Sum + i Next iP=Sum End Function
A.15
B.25
C.35
D.45
答案
参考答案:C
解析:
在被调用过程中,有这样的语句“Static Sum”,因为变量Sum是局部变量,局部变量除了可以用:Dim语句声明外,还可用Static语句将变量声明为静态变量,它在程序运行过程中可保留变量的值,这就是说每次调用过程时,用Static说明的变量保持原来的值。具体过程分析如下。
调用P(1),所以在被调过程中N=1,执行For Next循环,P(1)=Sum=1;
调用P(2),所以在被调过程中N=2,执行For Next循环,P(2)=Sum=4;
调用P(3),所以在被调过程中N=3,执行For Next循环,P(3)=Sum=10;
调用P(4),所以在被调过程中N=4,执行For Next循环,P(4)=Sum=20;
不难看出,最后输出的结果S值应为1+4+10+20=35,所以选项C)正确。