vb期末考试复习资料(经典总结版)(9)
k=l
hum = Abs(num) Do While num
k = k *(num Mod 10) num= num\\ 10 Loop ren = k End Sub
在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim n As Long, r As Long
n=InputBox(\请输入一个整数\ n = CLng(n) proc n, r Print r End Sub
程序运行后,单击命令按钮,在输入对话框中345,输出结果是
【分析】 过程proc有两个参数,其中第一个参数使用的是传值方式(带有关键字By Val),第二个参数使用的是引用方式(带有关键字ByRef,可以省略)。该过程的功能是,通过取余(Mod)和整除(\)运算符求出一个整数的各位数字,将这些数字相乘,并把乘积赋给参数ren。在事件过程中,用InputBox函数输入一个数,然后调用过程proc,如果输入的数是345,则结果为3*4*5=60。注意,调用语句 proc n,r有两个实参,其中r用来存放过程的返回值。Function过程通常有一个返回值,Sub过程也可以有返回值,并且可以有多个返回值,这些返回值放在形参中。在这种情况下,存放返回值的形参必须使用传地址方式,否则得不到正确结果。 【答案】 60
例5 阅读程序: Option Base 1
Dim arr2()As Integer
Private Function FindMax(a() As Integer) As Integer Dim Start As Integer
Dim Finish As Integer, i As Integer Start = Lbound____ Finish = UBound____ Max =____
For i = Start To Finish
If a(i) > Max Then Max = ______ Next i
FindMax = Max End Function
Private Sub Command1_Click() Dim arr1
arr1 = Array(12, 435, 76, 24, 78, 54, 866, 43) b = UBound(arr1)
ReDim arr2(___) As Integer For i= 1 To b
arr2(i) = CInt(_____) Next i
M = FindMax(arr2()) Print\最大值是:\End Sub
【分析】 数组在事件过程中定义,由于使用了Array函数,必须把数组变量定义为变体类型,但是,过程FindMax中的形式参数是整型,因此必须把数组转换为整型,否则在调用时将会产生“类型不匹配”错误。此外,用Array函数定义的数组不指定上界,只能通过UBound函数得到其上界。在窗体层定义了一个动态数组arr2,其上界在事件过程中给出并重新定义。因此,事件过程中的第一个空应为数组上界b,第二个空应为变体类型数组arr1(i)。
21
在通用过程中,需要知道数组的上界和下界,分别存放在变量Start和Finish中,然后把数组的第一个元素放在变量Max中,并把该变量与数组中的每个元素相比较,如果数组元素大于该变量,则用该元素的值取代Max中的值。
【答案】 事件过程中的两个空分别应填入: b arr(i)
通用过程中的4个空分别应填入: (a) (a)
a(Start)或a(1) a(i)
回该数组的最大值。请填空。
例6 用随机数函数Rnd生成一个8行8列的数组(各元素值在100以内),然后找出某个指定行内值最大的元素所在的列号。要求:查找指定行内值最大的元素所在列号的操作,通过一个过程来实现。 【分析】 求某一指定行中值最大的元素所在列号的Function过程代码如下: Function Max(b() As Integer, row As Integer) m = b(row, 1) col = 1
For i = 2 To UBound(b, 2) If b(row, i) > m Then Let m = b(row, i) col = i End If Next i Max = col End Function
该过程有两个参数,其中第一个参数是数组,第二个参数是数组中指定行的行号。在这个过程中,首先把指定行的第一列的值赋给一个变量,其列号为1,然后把该值与其后各列的值进行比较,如果比该值大,则用较大的值取代,同时记下其列号。 编写窗体的Click事件过程: Private Sub Form_Click() Randomize
Dim A(1 To 8, 1 To 8) As Integer Dim row As Integer For i = 1 To 8 For j = 1 To 8
A(i, j) = Int(Rnd * 100) Next j Next i
Print\所生成的数组为:\ For i = 1 To 8 For j = 1 To 8 Print A(i, j); Next j Print Next i Do
row = InputBox(\请输入指定的行号:\ Loop Until row >= 1 And row <= 8 col = Max(A(), row) Print
Print\第\行中最大元素所在列号为:\End Sub
该过程首先用随机数函数Rnd生成一个8行8列的数组,然后要求输入一个行号,程序将输出该行中最大值所在的列号。程序运行后,单击窗体,在输入对话框中输入一个行号,程序将输出该
22
行中值最大的元素所在的列号。
第九章 菜单与对话框
例1 Windows风格的对话框上通常没有最大化按钮和最小化按钮,为使标题栏上的这两个按钮消失,而保留其他按钮,设置窗体属性时,正确的是
A. ControlBox=True、 MaxButton=False、 MinButton=True B. ControlBox=False、 MaxButton=True、 MinButton=True C. ControlBox=True、 MaxButton=False、 MinButton=False D. ControlBox=False、 MaxButton=False、 MinButton=False
【分析】 ControlBox、MaxButton和MinButton属性都影响窗体标题栏上的按钮,其中ControlBox为False,则标题栏上的所有按钮消失,这显然与题意不符,所以B.和D.肯定是错误的。MaxButton和MinButton属性分别决定最大化按钮和最小化按钮是否显示,只有当二者都为False时,这两个按钮才都不显示。 【答案】 C
例2 设通用对话框控件的名称为CD1,希望在打开文件对话框中的“文件类型”列表中包含:所有文件、Word文档和文本文件这3类文件,在程序中设置Filter属性时正确的是 A.CD1.Filter=“所有文件|Word文档|文本文件”
B.CD1.Filter=“所有文件|*.*|Word文档|*.doc|文本文件|*.txt” C.CD1.Filter=所有文件|*.*|Word文档|*.doc|文本文件|*.txt D.CD1.Filter=“*.*|所有文件|*.doc|Word文档|*.txt |文本文件”
【分析】 通用对话框的Filter属性的值必须是字符型,在VB设计模式下,从属性窗口输入Filter的值时,可以直接输入字符串,但在程序中为Filter属性赋值时,必须添加字符串的定界符,所以C.一定是错误的。
Filter属性中字符串的格式应该是“类型描述1|过滤器1|类型描述2|过滤器2|??”,其中“类型描述”是在打开或保存文件对话框的“文件类型”列表中显示的一行文本,是向操作者表示的文件类型,操作系统并不能识别类型描述,操作系统可以识别的是它后面的“过滤器”,“过滤器”一般由通配符和文件的扩展名组成,是操作系统可以识别的与前面的“类型描述”匹配的文件类型。 对于答案A.,在对话框的“文件类型”列表中只显示“所有文件”和“文本文件”两行,操作系统把“Word文档”理解为“所有文件”的文件类型(即“过滤器”),事实上这种文件类型并不存在,因此对话框的文件列表中只有文件夹,而不会有任何其他文件。
答案D.中类型描述与过滤器的位置颠倒了,结果是在“文件类型”列表中显示*.*、*.doc、*.txt这3行内容,而与它们对应的过滤器都是错的,因此不管选择哪种文件类型,对话框中都只显示文件夹,而没有任何文件名。
只有答案B.才符合Filter属性要求的格式。 【答案】 B
例3 在使用通用对话框控件时, …… 此处隐藏:3644字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




