问题

【题目描述】

假定在窗体中的通用声明段已经定义有如下的子过程:

打开窗体运行后,单击命令按钮,消息框输出的值分别为(  )。

A)20和10

B)10和20

C)10和10

D)20和20

【我提交的答案】: D【参考答案与解析】:

正确答案:A答案分析:

本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用;若用ByRef声明,说明此参数为传址调用;没有说明传递类型,则默认为传址传递。即形参的结果会传递给实参。本题中形参完成了交换,由于默认为传址传递,交换后的值也会影响到实参a和b,即a和b也完成了交换。

Y和X事交换了么  Y=X的时候X已经=Y了  所以结果不是20.20?

参考答案

先看sub到endsub的内容:x、y传入子过程f中,然后把y的值赋给x,即x=y,然后y=x(由于此时x=y,即y=x=y,y的值不变)再看调用f(a,b),此时a相当于x,b相当于y,执行后,a=b=20,b=b=20,然后把(a&b)即(20&20)送到消息框,其中20&20=20,所以输出值为20.

您可能感兴趣的试题
  • 【题目描述】第 1 题以下程序的输出结果是 #include void prt (int *x, int *y, int *z) {printf(%d,%d,%d\n,++*x,++*y,*(z
  • 【题目描述】一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为A.219 B.221 C.229 D.231
  • 【题目描述】【我提交的答案】: A【参考答案与解析】:正确答案:B答案分析:请问希尔排序法是什么样子的?
  • 【题目描述】在窗体中使用一个文本框名为x.接受输入值,有一个命令按钮test,事件代码如下:Private Sub test_Clicky = 0For i = 0 To Me!xy = y + 2
  • 下列描述中正确的是__________A)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序,数据与相关文档的集合
  • 下面关于Access表的描述中,错误的是__________.A)在Access表中,可以对备注型字段进行“格式”,属性设置B)若删除表中含有自动编号型字段的一条记录后,Access不会对表中自动编号
相关内容
  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服