1、VB机试模拟试卷 127及答案与解析 一、基本操作题( 30分) 1 请根据以下各小题的要求设计 VisualBasic应用程序 (包括界面和代码 )。 (1)在名称为 Forml的窗体上画两个文本框,其名称分别为 Tcxtl和 Text2,它们的高、宽分别为 300、 2400和 1200、 2400。窗体的标题为 “窗口 ”。请通过属性窗口设置适当的属性满足以下要求: Text2可以显示多行文本,且有垂直和水平两个滚动条; 运行时在 Textl中输入的字符都显示为 “*”。运行后的窗体如图 1-166所示。注意:存盘时必须存放在考生文 件夹下,工程文件名为 sjtl vbp,窗体文件名为s
2、jtl frm。 (2)在名称为 Forml的窗体上画一个图像框,名称为 tmagcl,其高、宽分别为 1900、 1700,通过属性窗口把考生文件夹下的图像文件 picl bmp装入图像框;再画两个命令按钮,名称分别为 Cl、 C2,标题分别为“放大 ”、 “缩小 ”,如图 1-167所示。要求: 请编写适当的事件过程,程序运行后,如果单击 “放大 ”按钮,则把图像框的高度、宽度均增加 100;单击 “缩小 ”按钮,则把图像框的高度、宽度均减少 100。要求程序中不得使用任何变量。 通过属性窗口设置图像框的适当属性,使得在放大、缩小图像框时,其中的图像也自动放大、缩小。注意:存盘时必须存放在
3、考生文件夹下,工程文件名为 sjt2 vbp,窗体文件名为 sjt2 frm。 二、简单应用题( 40分) 2 (1)在名称为 Forml的窗体上画一个名称为 Labell、标题为 “添加项目: ”的标签;画一个名称为 Textl的文本框,没有初始内容;画一个名称为 Combol的下拉式组合框,并通过属性窗口输入若干项目 (不少于三个,内容任意 );再画两个命令按钮,名称分别为 Commandl、 Command2,标题分 别为 “添加 ”、 “统计 ”。在运行时,向 Textl中输入字符,单击 “添加 ”按钮后,则 Textl中的内容作为一个列表项被添加到组合框的列表中;单击 “统计 ”按钮
4、,则在窗体上显示组合框中列表项的个数,如图 1-144所示。请编写两个命令按钮的 Click事件过程。注意:程序中不得使用变量,也不能使用循环。存盘时必须存放在考生文件夹下,工程文件名为sjl3 vbp,窗体文件名为 sjt3 frm。 (2)在考生文件夹下有一个工程文件 sjt4,vbp,其窗体如图 1-145所示。该程序用来对在上面的文本框中输入的英文字母串 (称为 “明文 ”)加密,加密结果 (称为 “密文 ”)显示在下面的文本框中。加密的方法是:选中一个单选按钮,单击 “加密 ”按钮后,根据选中的单选按钮后面的数字 n,把明文中的每个字母改为它后面的第 n个字母 (“z”后面的字母认为
5、是 “a”, “Z”后面的字母认为是 “A”),如图 1-145所示。窗体中已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把程序中的 ?改为正确的内容。注意:不能修改程序中的其他部分和控件的属性。最后把修改后的文件按原文件名存盘。 三、综合应用题( 30分) 3 在考生目录下已有一个工程文件 sjt5 vbp。运行程序后,分别从两个文件中读出数据,放入两个一维数组 a、 b中。请编写程序,当单击 “合并数组 ”按钮时,将a、 b数组中相同下标的数组元素的值求和,并将结果存入数组 c。单击 “找最大值 ”按钮时,调用 find过程分别找出 a、 c数组中元素的最大值,并将所找到的
6、结果分别显示在 Textl、 Text2中。在给出的窗体文件中已经有了全部控件,但程序不完整。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内容,并编写相应程序,实现程序的功能。 注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文 件名存盘。程序调试通过后,各命令按钮的事件过程必须至少各执行一次。 VB机试模拟试卷 127答案与解析 一、基本操作题( 30分) 1 【正确答案】 第 1小题 【操作步骤】 步骤 l:新建一个 “标准 EXE”工程,在窗体 Forml中画两个文本框,并分别设置它们的相关属性,其属性及值如表 2-94所示。 步骤 2:按要求将文件保存至考生文件夹
7、中。 第 2小题 【操作步骤】 步骤 1:新建一个 “标准 EXE”工程,如表2-95在窗体中画出控件并设置其相关属性。步骤 2:打开代码编辑窗口,编写两个命令按钮的 Click事件 过程。 参考代码: PriVate Sub C1_Click() Imagel Width=Imagel Width+100 Imagel Height=Imagel Hei ght+100 End Sub PriVate Sub C2_Click() Imagel Width=Imagel Width一 100 Imagel Height=Imagel Hei ght-100 End Sub 步骤 3:按要求将
8、文件保存至考生文件夹中。 【试题解析】 第 1小题 文本框控件的 MultiLine属性设置文 本框是否能以多行显示文本,值为 True表示允许,值为 False表示不允许; ScrollBars属性设置文本框是否有水平或垂直滚动条,它的值为; 0表示没有滚动条 (默认值 ), 1表示只有水平滚动条, 2表示只有垂直滚动条, 3表示有水平和垂直滚动条,设置 O以外的值时 MultiLine属性值必须为 True。 本题只需按要求画出控件并设置其相应属性即可。 第 2小题 为图像框控件指定图片有两种方法:一是在设计阶段通过 Picture属性设置;二是在程序运行时通过 LoadPictm()图片
9、加载函数加载,其语法为: 图片框 Picture=Loadicture(“图像文件路径 “), App Path可返回当前工程文件所在的文件夹路径,是使用相对路径的一种用法。用不带参数的 LoadPicture函数为对象的 Picture属性赋值将清除窗体、图片框及图像控件中的图形。 Stretch(自动伸缩 )属性用来设定图像框是否需要自动调整大小,以适应载入图像框中的图片的大小,值为 True时表示自动调整。 程序运行时要改变图像框的大小,可通过修改其 Width和。 Height属性值来实现。 二、简单应用题( 40分) 2 【正确答案】 第 l小题 【操作步骤】 步骤 l:新建一个 “
10、标准 EXE”工程,如表 2-81在窗体中画出控件并设置其相关属性。步骤 2:打开代码编辑窗口,编写两个命令按钮的 Click事件过程。 参考代码; PriVate Sub Commandl_Click() Comb01 AddItem Textl Text End Sub PriVate Sub Command2_Click() Print Comb01 ListCount End Sub 步骤 3:按要求将文件保存至考生文件夹中。 第 2小题 【操作步 骤】 步骤 l:打开考生文件中的本题工程文件 sjt4 vbp,在代码编辑窗口,去掉程序中的注释符 “”,将问号 “?”改为正确的内容。
11、参考代码: n=Val(Opl(k) Caption) For k=1 To m c=Mid$(Textl Text, k, 1) a=a+c 步骤 2:按要求将文件保存至考生文件夹中。 【试题解析】 第 l小题 组合框 (ComboBox)将文本框与列表框的特性组合在一起,既可在组合框的文本框部分输入信息,也可在列表框部分选择项目。可通过修改组合框的 Style属性值来改变其显示类型,值为 0-Dropdown Combo时,表示下拉式组合框,包括一个下拉式列表和一个文本框,可以从列表选择或在文本框中输入;值为 1-Simple Combo时,表示简单组合框,包括一个文本框和一个不带下拉的列
12、表,可以从列表中选择或在文本框中输入,增加其高度可显示列表的更多部分;值为 2-Dropdown List时,表示下拉式列表,这种样式仅允许从下拉式列表中选择。 组合框的列表项既可以在设计阶段通过其 List属性设置加入 (注意:每输入完一项后按 键换行再输入 下一项 ),也可在程序运行时通过 Addltem方法加入,其语法为:组合框名 Addltem项目字符串 ,索引值】。其中, “索引值 ”可以指定插入项在列表框中的位置,表中的项目从 0开始计数。如果省略 “索引值 ”,则文本被放在列表框的尾部。 ListCount属性用来返回组合框中当前的列表项总数。 本题需按要求设计程序界面,并编写
13、“添加 ”和 “统计 ”命令按钮的 Click事件过程。 第 2小题 Strings(个数,字符 )函数用于返回含指定个数字符的字符串。 程序设计思路:在 “加密 ”按钮的单击 事件过程中,首先利用 For循环语句逐一判断单选按钮组中各个元素是否选中,若选中则用变量 n记录下该单选按钮所代表的数值;接着再次利用 For循环语句和 Mid函数逐一为文本框中的每一个字符 “加密 ”,若 “加密 ”后得到的字符在 ASCII表中值大于 “z”,则重新取比其小 26的字符;最后将 “加密 ”后的字符串显示在文本框 Text2中。 三、综合应用题( 30分) 3 【正确答案】 【操作步骤】 步骤 1:打
14、开考生文件夹下的本题工程文件 sjt5 vbp。打开代码编辑窗口。在指定位置编写代码。 参 考代码: Private Sub find(x()As Integer, t As =以下为考生编写的程序 = Max=x(1) For i=2 To UBound(x) If X(i)Max Then Max=x(i) End If Next t Text=Max =考生编写的程序结束 = End Sub Private Sub Command2 Click() =以下为考生编写的程序 = For i=1 To UBound(a) C(i)=a(i)+b(i) Next =考生编写的程序结束 = Op
15、en App Path &“ out51 txt“ For Output As#1 For i=0 To 9 Print#1, C(i) Next Close#1 End Sub 步骤 2:按要求将文件 保存至考生文件夹中。 步骤 3:按 键运行程序,先单击 “读数据 ”按钮,再单击 “合并数组 ”按钮,最后单击 “找最大值 ”按钮。 【试题解析】 本题中自定义过程 fmd的功能是找出数组参数 x()中的最大值,并且将其放入文本框参数 t中。其基本思路为:首先利用 Ubound函数获得数组的长度,然后假设数组的第一个数为最大值,再由数组的第二个数直到最后一个数进行循环,在循环中对数组元素和最大值进行比较,二者中较大的数存入最大值变量,循环结束后将最大值显示在 t中。 在 “合并数组 ”按钮的单击事件 中,利用 For循环依次将 a、 b数组中同下标的元素相加并且放入数组 c中。