首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某人编写了下面的程序: Private Sub Command1=1_Click() Dim a As Integer,b As Integer a=InputBox("请输入整数") b=InputBox("请输入
某人编写了下面的程序: Private Sub Command1=1_Click() Dim a As Integer,b As Integer a=InputBox("请输入整数") b=InputBox("请输入
admin
2018-10-18
52
问题
某人编写了下面的程序:
Private Sub Command1=1_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/wDFp777K
本试题收录于:
二级VB题库NCRE全国计算机二级分类
0
二级VB
NCRE全国计算机二级
相关试题推荐
设有如下Command1按钮的单击事件过程及fun过程:PrivateSubCommand1_Cliek()DimxAsIntegerx=Val(InputBox("请输入一个整数"))fun(x)
窗体上有一个名称为Command1的命令按钮,其单击事件过程如下:PrivateSubCommand1_Click()DimsAsDoubles=0:i=1DoWhilei<6s
窗体上有一个名称为Command1的命令按钮,其单击事件过程如下:PrivateSubCommand1_Click()Fori=3To1Step-1Sum=0Forj=1Toi
命令按钮Command1的MouseUp事件过程结构如下:PrivateSubCommand1_MouseUp(ButtonAsInteger,ShiftAsInteger,
设Label1、Command1、Text1、Check1分别为标签、命令按钮、文本框、复选框的名称,则以下属性设置语句中,运行时不会出错的是
下列程序段的输出结果是x=5Printx+1;x+1
随机试题
患者,女,40岁,2个月前行丨6固定义齿修复,自诉进食后桥体两侧龈端经常有食物堆积在重新为其修复时,不利于病人自洁的是
治疗疟疾首选的联合用药治疗方案是
检测病原菌抗原的方法不包括
患者,男,56岁。反复血尿3个月,血尿多在排尿结束前出现,为鲜红色,无血块排出,伴有轻微尿痛。引起该患者血尿的病变部位最可能在
下列不是腰痛病因的是
甲某从乙某处购得毒品海洛因50克,又掺人米粉50克.将其卖给丙某。甲某的行为构成:()
职业健康与安全管理体系运行是指按照已建立体系的要求实施。下列不属于职业健康安全管理与环境管理体系运行范畴的是()。
法国作曲家奥涅格的管弦乐曲《太平洋231》描绘的音乐形象是()。
与现货交易相比,期货交易最显著的特点是()。
设则()
最新回复
(
0
)