求大神告知这题为什么选A
1个回答
展开全部
这题需要注意的是在函数GetValue中,S的定义方式是Dim S As Integer,所以每次调用该函数结束时S存的值都会被清空,下次再调用时,S又被初始化为0。
程序运行过程:
1.在i = 1,2,3时各调用了一次GetValue,在i变为3调用GetValue后,执行语句next i,使i变为4。2.接着返回语句For i = 1 to 3检测,i为4不符合条件,跳出循环。
3.运行Print Getvalue(i)。又一次调用函数Getvalue。由于i为4,按值传递a变为4,S通过S=S+a赋值变为4。最后Getvalue的返回值就是4,所以选A。
程序运行过程:
1.在i = 1,2,3时各调用了一次GetValue,在i变为3调用GetValue后,执行语句next i,使i变为4。2.接着返回语句For i = 1 to 3检测,i为4不符合条件,跳出循环。
3.运行Print Getvalue(i)。又一次调用函数Getvalue。由于i为4,按值传递a变为4,S通过S=S+a赋值变为4。最后Getvalue的返回值就是4,所以选A。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询