首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在窗体上画一个命令按钮,其名称为Command1,然后编写如下程序: Private Sub Command1_Click() Dim a(10)As Integer Dim x As Integer For i=1
在窗体上画一个命令按钮,其名称为Command1,然后编写如下程序: Private Sub Command1_Click() Dim a(10)As Integer Dim x As Integer For i=1
admin
2010-03-22
36
问题
在窗体上画一个命令按钮,其名称为Command1,然后编写如下程序:
Private Sub Command1_Click()
Dim a(10)As Integer
Dim x As Integer
For i=1 To 10
a(i)=i
Next i
x=1
MsgBoxa(f(x)+x)
End Sub
Function f(y As Integer)
y=y+2
f=y
End Function
程序运行后,单击命令按钮,消息框的输出结果为______。
选项
答案
6
解析
本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。本题中函数f的形参y没有使用ByVal声明,则默认为传址传递。当求a(f(x)+x)值的时候,先要求出f(x)+x的值。由于x的值为1,那么调用函数f以后得到f(x)的返回值为3,同时由于函数f中改变了形参y的值,在传址传递的前提下这一改变会影响到对应的实参x,故此函数调用结束后x的值变为3,也就是最后输出的应该是a(6)的值也就是6。举一反三,如果最后输出的不是a(f(x)+x)而是 a(x+f(x)),则会先取得x的值1,然后再计算f(x)的值为3,那么最后输出的就不是a(6)的值而是a(4)的值了。
转载请注明原文地址:https://kaotiyun.com/show/E8wp777K
本试题收录于:
二级Access题库NCRE全国计算机二级分类
0
二级Access
NCRE全国计算机二级
相关试题推荐
下列程序的运行结果为()。#includevoidprint(doublea){cout
有如下头文件:intf1();staticintf2();classMA{public:intf3();staticintf4();friendintf1();friendstat
有如下类定义:classPoint{private:staticinthow_many;};_____how_many=0;要初始化Point类的静态成员how_many,下画线处应填入的内
计算数列第n项的函数定义如下:intfa(intn){if(n==0)return0;elseif(n==1)return1;elsereturnfa(n-1)+fa(n-2);}若
下列选项中,不是重载函数调用时选择依据的是
在数据库系统的组织结构中,下列()映射把用户数据库与概念数据库联系了起来。
在函数中,可以用auto、extern、register和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是()。
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。
结构化程序设计中,下面对goto语句使用描述正确的是
下列选项中不属于结构化程序设计原则的是( )。
随机试题
为了减轻伤口疼痛,子宫内膜异位症患者术后卧位应是
a_________vt.完成(任务等)
导致射血分数增大的因素有
本例与钙磷代谢最无关的因素是本例出现皮肤瘙痒的最重要原因是
光镜下发现下列哪种细胞对尖锐湿疣的诊断价值最大
网上定价发行正式将市场原则引入发行环节,通过市场竞争最终决定较为合理的发行价格。()
以下几种配送模式中,哪一种不设配送中心()
外汇倾销
Theincreaseinglobaltrademeansthatinternationalcompaniescannotaffordtomakecostlyadvertisingmistakesiftheywantt
Everyonelovesanunderdog.ThenewsofDetroit’sbankruptcyonJuly18th,thelargesteverfiledbyanAmericancity,madehead
最新回复
(
0
)