首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某人编写了下面的程序: Private Sub Command1_Click() Dim a As Integer, b As Integer a=InputBox("请输入整数") b=InputBox("请输入整数") pro
某人编写了下面的程序: Private Sub Command1_Click() Dim a As Integer, b As Integer a=InputBox("请输入整数") b=InputBox("请输入整数") pro
admin
2015-06-30
59
问题
某人编写了下面的程序:
Private Sub Command1_Click()
Dim a As Integer, b As Integer
a=InputBox("请输入整数")
b=InputBox("请输入整数")
pro a
pro b
Call pro(a+b)
End Sub
Private Sub pro(n As Integer)
While(n>0)
Print n Mod 10;
n=n\10
Wend
Print
End Sub
此程序功能是:输入2个正整数,反序输出这2个数的每一位数字,再反序输出这2个数之和的每一位数字。例如:若输入123 和234,则应该输出:
3 2 1
4 3 2
7 5 3
但调试时发现只输出了前2行(即2个数的反序),而未输出第3行(即2个数之和的反序),程序需要修改。下面的修改方案中正确的是( )。
选项
A、把过程pro 的形式参数 n As Integer 改为 ByVal n As Integer
B、把Call pro(a+b)改为 pro a+b
C、把n=n\10 改为 n=n / 10
D、在pro b语句之后增加语句 c%=a+b ,再把 Call pro(a+b)改为 pro c
答案
A
解析
在过程定义中过程的形式参数定义时如果没有ByVal指明参数的传递方式,那么默认为地址传递,这样过程中对形参的改变将影响到实参的值。本程序中过程定义语句 Private Sub pro(n As Integer)说明形参n为按地址传递的,而在过程内语句n=n\10改变了形参的值,因此,a、b的值就不再是最初输入的值了,表达式a+b就不是期望的两个输入数的和。因此得不到正确结果。
只要把Private Sub pro(n As Integer)改为Private Sub pro(ByVal n As Integer),程序即可得到正确结果,因此A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/3rQp777K
本试题收录于:
二级VB题库NCRE全国计算机二级分类
0
二级VB
NCRE全国计算机二级
相关试题推荐
在窗体上画一个命令按钮,其名称为Command1,然后编写如下程序:FunctionM(xAsInteger,yAsInteger)AsIntegerM=IIf(x>y,x,y)EndFuncti
在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1Click()a=Val(InputBox(“请输入一个整数”))b=Val(InputBox(“请输入一个整数”))P
设有以下函数过程:Functiofun(mAsInteger)AsIntegerDimkAsInteger,sumAsIntegersum=0Fork=mTo1Ste
Text文本框接受的最长字符数由文本框的______属性确定。
下列选项中不属于结构化程序设计方法的是()。
假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为【】。
执行下面的语句后,所产生的信息框的标题是()a=MsgBox(“AAAA”,“BBBB”,“”,5)
下列关于Do…Loop语句的叙述不正确的是()
需求分析阶段的任务是确定()
随机试题
关于颈交感干的描述,错误的是
前置胎盘时,期待疗法适用于:
人为风险存在于药品的哪些环节
某县公安局以涉嫌盗窃将何某刑事拘留,3个月后决定撤销案件并将何某释放。何某向某县公安局提出国家赔偿请求。下列哪一项说法是正确的?()
已知=()。
( )在工程项目施工中处于中心地位,对工程项目施工进行全面管理。
人民法院可以根据具体情况对不同的证据采用不同的保全方法,下列行为不是证据保全方法的是( )。
关于任意公积金,下列说法正确的是()
一块黑板擦放在水平的讲台面上,以下关于这块黑板擦所涉及的物理知识的叙述中,说法不正确的是()。
【B1】【B9】
最新回复
(
0
)