一道VB题目,求解答。请详细,多谢多谢!

在窗体上画一个命令按钮(Command1),并编写如下代码:FunctionFun1(ByValaAsInteger,bAsInteger)DimtAsIntegert=... 在窗体上画一个命令按钮(Command1),并编写如下代码:
Function Fun1(ByVal a As Integer, b As Integer)
Dim t As Integer
t = a - b
b = t + a
Fun1 = t + b
End Function

Private Sub Command1_Click()
Dim x As Integer
x = 10
Print Fun1(Fun1(x, (Fun1(x, x - 1))), x - 1)
End Sub
单击命令按钮,输出结果是。
展开
 我来答
百度网友d1ed4a9430
2010-08-20 · TA获得超过1.6万个赞
知道大有可为答主
回答量:6236
采纳率:73%
帮助的人:3449万
展开全部

执行时截图如下:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
酱爆小鲤鱼
2010-08-23 · TA获得超过661个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:531万
展开全部
a是按值传递,b是按地址传递~
Fun1(x, x - 1)=Fun1(10,9)=(10-9)+(10-9+10)=12
Fun1(x, (Fun1(x, x - 1))=Fun1(10,12)=(10-12)+(10-12+10)=6
Fun1(Fun1(x, (Fun1(x, x - 1))), x - 1)=Fun1(6,9)=(6-9)+(6-9+6)=0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cnxh2007
2010-08-20 · TA获得超过999个赞
知道小有建树答主
回答量:476
采纳率:86%
帮助的人:375万
展开全部
总共调用3层Fun1
最里面1层:Fun1(x,x-1) = x-(x-1)+x+x-(x-1) = 12
中间:Fun1(x,12) = x-12+x+x-12 = 3x-24 = 6
最外面:Fun1(6,x-1) = 6-(x-1) + 6 + 6-(x-1) = 0

所以最后结果是0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2010-08-20 · TA获得超过615个赞
知道小有建树答主
回答量:319
采纳率:0%
帮助的人:388万
展开全部
输出结果为0,可以直接在VB里运行代码,也可以自己算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mew07
2010-08-20 · TA获得超过882个赞
知道小有建树答主
回答量:898
采纳率:0%
帮助的人:674万
展开全部
0

a是byval传值的,b不是。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式