- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[说明]本次实验分两个部分A、请大家上机阅读调试下列程序(请先不要看.doc
同学们,加油啊!我们剩下的时间不多了!本次课的内容必须要掌握哦!
[说明:]本次实验分两个部分A、请大家上机阅读调试下列程序(请先不要看后面的解析):
B、完成B部分的两道题目(将你的答案发送到malixin_25@163.com)!!!!此项作为课程的一次评分依据.邮件的主题请注明你的学号姓名以及联系方式,如:
张三A.1、假定有以下两个过程:(知识点:函数的定义,以及参数Byval 、byval)
Sub S 1 (ByVal x As Integer, ByVal y As Integer)
Dim t As Integer
t=x
x=y
y=t
End Sub
Sub S2(x As Integer, y As Integer)
Dim t As Integer
t=x
x=y
y=t
End Sub
当调用这两个子过程时,以下说法中正确的是 。
A.用过程S1可以实现交换两个变量的值的操作,S2不能实现
B.用过程S2可以实现交换两个变量的值的操作,S1不能实现
C.用过程S1和S2都可以实现交换两个变量的值的操作
D.用过程S1和S2都不能实现交换两个变量的值的操作
答:B
【解析】(1)在VB中,调用过程时,主调过程与被调过程的数据传递,是靠主调过程的实参传递给被调过程的形参,实参和形参的结合有两种方法,即传址和传值,传值的形参前有”ByVal”关键字,而默认的方法或者是形参前有“ByRef”关键字的都是传址方法。
(2)当调用一个过程时,若是传址的结合过程,则实参的地址传给形参,因此在被调用过程中对形参的任何操作都变成了对相应实参的操作,实参的值就会随过程体内对形参的改变而改变;若是传值的结合过程,系统将实参的值复制给形参,然后实参与形参断开联系,因此在过程体内对形参的任何操作不会影响到实参。
(3)对于原题中两个子过程,很显然S1为传值的方法,而S2是传址的方法,所以当调用这两个子过程时,调用S1子过程的两个实参不能实现交换,而调用S2子过程的两个实参可以随两个形参的交换而交换。故B选项正确。
A.2设有如下程序(知识点:函数的调用call,以及数组只能作为byref调用)
Option?Base?1
Private?Sub?Command1_Click()
????Dim?a(10)?As?Integer
????Dim?n?As?Integer
??? n=InputBox(输入数据)
?? If?n10?Then
???? ??Call?GetArray(a,n)
??? End??If
End?Sub
Private?Sub?GetArray(b()?As?Integer,n?As?Integer)
???Dim?c(10)?As?Integer
j=0
?? For?i=1?To?n
??? ??b(i)=Int(Rnd()*100)
????? If?b(i)/2=b(i)\2?Then
??????? ?j=j+1
???????? c(j)=b(i)
???? End?If
?? Next
?? Print?j
End?Sub
以下叙述中错误的是
A.数组b中的偶数被保存在数组c中
B.程序运行结束后,在窗体上显示的是c数组中元素的个数
C.GetArray过程的参数n是按值传送的
D.如果输入的数据大于10,则窗体上不显示任何内容
答:C
【解析】在定义过程GetArray时,形参n前没有显式使用ByRef或ByVal,则默认使用ByRef方法,即为传址形式,因此C项叙述错误。而其余选项叙述均正确。
A.3 如果组合框ComBo1中已有10项数据,应使用语句______将数据Mydata插入到第5项 。(知识点:list、combox相关方法)
A.ComBo1.AddItem Mydata, 4 B.ComBo1.Insert Mydata, 5
C.ComBo1.Insert Mydata, 4 D.ComBo1.AddItem Mydata, 5
答:A
【解析】列表框或组合框无Insert方法,故B、C错误; AddItem方法可把一个选项加入列表框或组合框,形式为:对象.AddItem Item[,Index], Index决定新增选项在列表框或组合框中的位置,如果Index省略,则新增选项添加在最后,对于第一个选项,Index为0。由此分析可见应选A。
A.4.引用组合框ComBo1最后一个数据项应使用______。(知识点:list、combox相关方法)
A.Com
文档评论(0)