1个回答
展开全部
举第一个选项的例子吧?后面的都可以举一反三。
首先说明三点;
(1)启动程序后,Hscroll的值value=1
(2)当在滚动条右端点箭头时,每点一次Hscroll的值value加1
(3)启动程序后,y的初值是2
再来看程序,当点击滚动条右端点箭头时,触发Private SubHScroll1_Change()程序,只有三句:
'Dim y As Single '②
y = y + f1(HScroll1.Value)
Print y
而第一句被加上'号不被执行,也就剩下两句
第一句是y = y + f1(HScroll1.Value)=2+f1(HScroll1.Value),调用函数f1(),这时要知道HScroll1.Value的值=1+1=2,所以调用 的是f1(2)
看函数过程:也是只有三句
Private Function f1(x2 AsInteger) As Single
Static x1 AsInteger '①,这一句声明了一个动态变量x1,这个变量在退出本段程序后变量的值会一直保存,可以再次使用,第一次声明时x1的初值为0
f1 = x1 + x2=0+(这时x2就是调用函数时带来的变量HScroll1.Value=2)=2这也就是f(2)的函数值
x1 = x2=2再把x2的值赋给x1(动态变量),以便记录下来。
这时返回主程序继续计算y = y + f1(HScroll1.Value)=2+f1(HScroll1.Value)=2+f1(2)=2+2=4
然后打印的是4
再点击一次,这时已经HScroll1.Value=3了, y = y + f1(HScroll1.Value)=y+f1(3)
而在函数中f1(3)=x1+x2=2+3=5
返回主程序继续计算y = y + f1(HScroll1.Value)=4+f1(HScroll1.Value)=4+f1(3)=4+5=9
然后打印的是9
所以显示的是4 9,也就是D。
首先说明三点;
(1)启动程序后,Hscroll的值value=1
(2)当在滚动条右端点箭头时,每点一次Hscroll的值value加1
(3)启动程序后,y的初值是2
再来看程序,当点击滚动条右端点箭头时,触发Private SubHScroll1_Change()程序,只有三句:
'Dim y As Single '②
y = y + f1(HScroll1.Value)
Print y
而第一句被加上'号不被执行,也就剩下两句
第一句是y = y + f1(HScroll1.Value)=2+f1(HScroll1.Value),调用函数f1(),这时要知道HScroll1.Value的值=1+1=2,所以调用 的是f1(2)
看函数过程:也是只有三句
Private Function f1(x2 AsInteger) As Single
Static x1 AsInteger '①,这一句声明了一个动态变量x1,这个变量在退出本段程序后变量的值会一直保存,可以再次使用,第一次声明时x1的初值为0
f1 = x1 + x2=0+(这时x2就是调用函数时带来的变量HScroll1.Value=2)=2这也就是f(2)的函数值
x1 = x2=2再把x2的值赋给x1(动态变量),以便记录下来。
这时返回主程序继续计算y = y + f1(HScroll1.Value)=2+f1(HScroll1.Value)=2+f1(2)=2+2=4
然后打印的是4
再点击一次,这时已经HScroll1.Value=3了, y = y + f1(HScroll1.Value)=y+f1(3)
而在函数中f1(3)=x1+x2=2+3=5
返回主程序继续计算y = y + f1(HScroll1.Value)=4+f1(HScroll1.Value)=4+f1(3)=4+5=9
然后打印的是9
所以显示的是4 9,也就是D。
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询