单选题 在窗体中有一个命令按钮Commandl,编写事件代码如下: Dim S As Integer S=P(1)+P(2)+P(3)+P(4) debug.Print s End Sub Public Function P(N As Integer) Dim Sum As Integer Sum=0 For i=l To N Sum:Sum+i Next i P=Sum End Function打开窗体运行后,单击命令按钮,输出结果是( )。
【正确答案】 B
【答案解析】解析:首先看程序中的Function P函数,在该函数中,首先定义了整型变量Sum,并为变量Sum赋初值0,然后设置了一个For循环,将函数参数作为For循环的控制条件,通过语句“Sum=Sum+i”,将循环次数累计相加。在按钮单击事件“Command1_Click()”通过语句“s=p(1)+p(2)+p(3)+p(4)”调用函数并将函数结果用于计算。下面就来分析一下程序运行过程:P(1),代入函数P的参数N=1,For循环运行1次,i=1时Sum=0+1=1,所以P(1)=1;P(2),代入函数P的参数N=2,For。循环运行2次,i=1时Sum=0+1=1,i=2时Sum=1+2=3,所以P(2)=3;P(3),代人函数P的参数N=3,For循环运行3次:i=1时Sum=0+l=1,i2时Sum=1+2=3,i=3时Sum=3+3=6,所以P(3)=6;P(4),代入函数P的参数N=3,For循环运行4次,i=1时Sum=0+1=1,i=2时Sum=1+2=3,i=3时Sum=3+3=6,i=4时Sum=6+4=10,所以P(4)=10。那么,s=P(1)+P(2)+P(3)+P(4)=1+3+6+10=20,所以输出结果为20。所以本题答案为B。