1、VB机试模拟试卷 151及答案与解析 一、基本操作题( 30分) 1 请根据以下各小题的要求设计 VisualBasic应用程序 (包括界面和代码 )。 (1)在名称为 Forml的窗体上画一个名称为 L,abell、标题为 “设置速度 ”的标签,通过属性窗口把标签的大小设置为自动调整。画一个名称为 HScrolll的水平滚动条,通过属性窗口设置适当属性使滚动条的最大值为 80,最小值为 1,单击滚动条两端的箭头时,滚动框移动 2,滚动框的初始值为 30。程序运行后的窗体如图 1-161所示。注意:存盘时必须存放在考生文件夹下,工程文 件名为 sitl vbp,窗体文件名为sjtl frm。
2、(2)在名称为 Forml的窗体上画一个名称为Shape1的形状控件,画两个名称分别为 Commandl、 Command2,标题分别为 “圆形 ”、 “红色边框 ”的命令按钮。将窗体的标题设置为 “图形控件 ”,如图 1-162(a)所示。请编写适当的事件过程,使得在运行时,单击 “圆形 ”按钮将形状控件设为圆形。单击 “红色边框 ”按钮,将形状控件的边框颜色设为红色 (&HFF&),如图 1-162(b)所示。注意:要求程序中不得使用变量,每个事件过程中只能写一条语句。存盘时必须 存放在考生文件夹下,工程文件名为 sjt2 vbp,窗体文件名为sjt2 frm。 二、简单应用题( 40分)
3、 2 (1)在考生目录下有一个工程文件 sjt3 vbp。程序的功能是:通过键盘向文本框中输入数字,如果输入的是非数字字符,则提示输入错误,且文本框中不显示输入的字符。单击名称为 Command1、标题为 “添加 ”的命令按钮,则将文本框中的数字添加到名称为 Combol的组合框中。在给出的窗体文件中已经添加了全部控件,但程序不完整。要求去掉程序中的注释符,把程序中的 ?改为正确的内容。 注意:不能修改程序 中的其他部分和其他控件的属性。最后把修改后的文件按原文件名存盘。 (2)在考生目录下有一个工程文件 sjt4 vbp。该程序的功能是计算M!+(M+1)!+(M+2)!+N! 之和。窗体上
4、有名称分别为 Textl、 Text2的两个文本框,用于接收输入的 M和 N(要求 M57 Or KeyAscii键键运行程序。在第一个文本框中输入一个整数,第二个文本框中输入比第一个文本框中大的数,然后单击 “计算 ”按钮。 步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 第 1小题 KeyPress(KeyAscii As Integer)事件是在对象具有焦点时,如下键盘上的键时触发的事件, KeyAscii参数是所按键的 ASCII的代码,将每个字符的大、小写形式作为不同的键代码解释。 Ase()函数可返回字符的 ASCII码值,该值可以进行数学运算。 数字 09的 ASCII
5、码范围为 48 57,大写字母 A lZ的 ASCII码范围为 65 90,小写字母 az的 ASCII码范围为 97 122,空 (NUL)的 ASCII码为0。 组合框的列表项既可以在设计阶段通过其 List属性设置加入 (注意:每输入完一项后按 键换行再输入下一项 ),也可在程序运行时通过 Addltem方法加入,其语法为:组合框名 Addltem项目字符串 ,索引值】。其中, “索引值 ”可以指定插入项在列表框中的位置,表中的项目从 0开始计数。如果省略 “索引值 ”,则文本被放在列表框的尾部。 本题原程序要在文本框中防止非数字字符的输入,应在其 KeyPress事件过程中,将输入字符
6、的 KeyAscii值大于 57或小于 48的重新赋值为 O。向组合框中输入项目,应使用其 Addltem方法。 第 2小题 本题原程序中,自定义函数 f的功能是进行 x!阶乘运算,它通过 For循环 连续 x次将循环变量 i的值乘以累积变量 t(t初值应为 1)来实现。故自定义函数 f中第一个 ?处应改为: t*i,作为函数返回值第两个 ?处应改为: t。 在 “计算 ”按钮的单击事件过程中,根据程序所要计算表达式的特点,原程序利用一个 For循环依次计算表达式中各项的值,并将其累加入变量 s。计算表达式中各项的值通过调用自定义函数 f【 t)来实现的。故 Commandl_Click事件过
7、程中第一个 ?处应改为: m,第两个 ?处应改为: f(i),第三个 ?处应改为: t。计算结果显示在标签中。 三、综合应用题( 30分) 3 【 正确答案】 【操作步骤】 步骤 l:打开考生文件夹下的本题工程文件 sjt5 vbp。 步骤 2:编写 “计算 ”按钮的单击事件过程。 参考代码: PriVate Sub Commandl_Click() Dim f1, f2, f As Long Dim a(40) As Long f1=1 : f2=1 a(1) =f1 : a(2) =f2 F0r i=3 T0 Val(Textl Text) f: fl+f2 a(i) =f : f1=f2
8、 : f2=f Next Text2 Text=a(40) End Sub 步骤 3:运行程序,在文本框中输入 40,并单击 “计算 ”按钮获得一个结果,然后单击 “存盘 ”按钮保存计算结果。 步骤 4:按要求将文件保存至考生文件夹中。 【试题解析】 数组使用相同的名字引用一系列变 量,并用数字索引来识别它们。数组有上界和下界,数组的元素在上、下界内是连续的。 Visual Basic对每一个索引值都分配空间,所以不要不切 实际地声明一个太大的数组。在很多情况下,使用数组可以缩短和简化程序,因为可以利用索引值设计循环,高效地处理多种情况。 可以声明具有任何基本数据类型的数组,数组中的所有元素具有相同的数据类型,当数据类型为 Variant时,各元素能够包含不同种类的数据 (对象、字符串、数值等 )。 根据题意,从数列的第三个数开始,每个数是其前两个数之和,数列第 n项的值可表示为: a(n)=a(n-1)+a(n-2)。可以利用 For循环语句 (循环变量 i的初值为 3,终值为 n),从数列的第三个数开始,逐一计算出该数列第 3n项的值,计算表达式为 a(i)=a(i-1)+a(i-2)。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1