1、国家二级 VB机试(上机操作)模拟试卷 122及答案与解析 一、基本操作题 1 在名称为 Form1的窗体上添加两个名称分别为 Text1和 Text2的文本框,它们的高、宽分别为 300、 2400和 1200、 2400。窗体的标题为 “窗口 ”。请通过属性窗口设置适当的属性,满足如下要求: Text2可以显示多行文本,并且有垂直和水平两个滚动条; 程序运行时在 Text1中显示输入的字符为 “*”。程序运行后的窗体如图所示。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt1 vbp,窗体文件名保存为sjt1 frm。 2 在名称为 Form1的窗体上添加一个名称为 Image
2、1的图像框,其高、宽分别为1900、 1700,通过属性窗口把考生文件夹下的图像文件 pic1 bmp载入图像框;再画两个命令按钮控件,名称分别为 C1、 C2,标题分别为 “放大 ”、 “缩小 ”,如图所示。 要求: 请编写适当的事件过程,程序运行后,如果单击 “放大 ”按钮,则将图像框的高度、宽度均增加 100;单击 “缩小 ”按钮,则将图像框的高度、宽度均减少 100,要求程序中不得使用任何变量。 通过属性窗口设置图像框的适当属性,使得在放大、缩小图像框时,其中的图 像也自动放大、缩小。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sit2 vbp,窗体文件名保存为 sit2 f
3、rm。 二、简单应用题 3 考生文件夹下有一个工程文件 sjt3 vbp,其功能是: 单击 “读数据 ”按钮,则将考生文件夹下 in3 dat文件中的 100个 0 999的整数读入到数组 a中; 单击 “计算 ”按钮,则找出这 100个整数中的所有水仙花数,并将它们的最大值与最小值分别显示在文本框。 Text1、 Text2中 (注:当一个数的值等于该数中的各位数字的立方和时,此数被称为水仙花数。如: 153=13+53+33,所以 153就是一个水仙花数 )。在窗体文件中已经给出了全部控件 (如图所示 )和 “读数据 ”命令按钮的事件过程以及判断一个数是否为水仙花数的通用过程。要求编写 “
4、计算 ”命令按钮的事件过程。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行前,必须进行 “计算 ”,并且必须通过单击窗体右上角的 “关闭 ”按钮结束程序,否则无成绩。最后,程序按原文件名存盘。 4 在考生文件夹下有一个工程文件 sjt4 vbp。请在窗体上添加一个组合框,名称为cb1,并输入三个列表项: “3”、 “7”、 “11”(列表 项的顺序不限,但必须是这三个数字 );添加一个名为 Text1的文本框;再添加一个标题为 “计算 ”、名称为 C1的命令按钮,如图所示。请编写适当的事件过程,使得在程序运行时,在组合框中选定一个数字后,单击 “计算 ”按钮,则计算 5000
5、以内能够被该数整除的所有数之和,并放入 Text1中。最后,按原文件名存盘。提示:由于计算结果较大,应使用长整型变量。注意:考生不得修改窗体文件中已经存在的程序,在结束程序运行之前,必须至少进行一次计算。并且必须用窗体右上角的关闭按钮结束程序,否则无成绩。三、综合应用题 5 在考生 文件夹下有一个工程文件 sjt5 vbp,其名称为 Form1的窗体上已有三个文本框 Text1、 Text2、 Text3,以及部分程序代码,请完成以下工作。 在属性窗口中修改 Text3的适当属性,使其在运行时不显示,作为模拟的剪贴板使用,窗体如图所示。 建立下拉式菜单,如下表所示。 窗体文件中给出了所有事件过
6、程,但不完整,请去掉程序中的注释符,把程序中的 ?改为正确的内容,以便实现如下功能:当光标所在的文件框中无内容时, “剪切 ”、 “复制 ”不可用,否则可以把该文本框中的内容剪切或复制到 Text3中;若 Text3中 无内容,则 “粘贴 ”不能用,否则可以把 Text3中的内容粘贴在光标所在的文本框中的内容之后。注意:不能修改程序中的其他部分,各菜单项的标题名称必须正确。最后将修改后的文件按原文件名存盘。 国家二级 VB机试(上机操作)模拟试卷 122答案与解析 一、基本操作题 1 【正确答案】 操作步骤 步骤 1:新建一个窗体,按照题目要求建立文本框控件并设置其属性,程序中涉及的控件及属性
7、见表 3 8和表 3 9。步骤 2:调试并运行程序,关闭程序后按题目要求存盘。 2 【正确答案】 操作步骤 步骤 1:新建一个窗体,按照题 目要求建立控件并设置图像框相应属性,如图 3 17所示。步骤 2:按照步骤 1设置其他控件相关属性,程序中涉及的控件及属性见表 3 10。步骤 3:打开代码编辑窗口,在指定位置编写如下代码。参考代码 Private Sub C1 C1ick()当单 击 “放大 “按钮时,依次将 Image1的高与宽分别加100Image1 Height=Image1 Height+100Image1 Width=Image1 Width+100End SubPrivate
8、 Sub C2 Click()当单击 “缩小 “按钮,则依次将 Image1的高与宽分别减100Image1 Height=Image1 Height100Image1 Width=Image1 Width100End Sub步骤 4:调试并运行程序,关闭程序后按题目要求存盘。 二、简单应用题 3 【正确 答案】 操作步骤 步骤 1:按照题目要求打开工程文件。步骤 2:打开代码编辑窗口,在指定位置编写如下代码。参考代码 Dim i As IntegerDim max As Integer, min As Integermax=-1min=1000For i=1 To 100If isnarc(
9、a(i)Then调用 isnarc判断是否为水仙花数 If max =a(i)Then max=a(i)If min =a(i)Then min=a(i)求水仙花数中的最大值与最小值 End IfNext iText1=maxText2=min步骤 3:按照题目要求调试并运行程序,如图 3 18所示。 步骤 4:关闭程序后,按题目要求存盘。 4 【正确答案】 操作步骤 步骤 1:打开本题工程文件,按照题目要求建立控件并设置组合框控件属性,如图 3 19所示。程序中用到的控件及属性见表 3 11。步骤 2:打开代码编辑窗口,在代码编辑窗口指定位置编写以下代码。参考代码 Private Sub C
10、1 Click()Dim sum As LongDim n As IntegerDim i As Integern=Val(cb1 Text)读取 选中的数字并通过函数 Val转换为数值 For i=n To 5000从本身开始循环查找 If i Mod n=0 Thensum=sum+i断是否能被该数整除并求和 End IfNext iText1 Text=sum在Text1中显示 End Sub步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 三、综合应用题 5 【正确答案】 操作步骤 步骤 1:打开本题工程文件,将 Text3的 Visible属性设置为 False,然后按照题目要求
11、建立菜单并设置其属性,如图 3 20所示。菜单属性如表 3 12所示。 步骤 2:打开代码编辑窗口,去掉程序中的注释符 “”,将问号改为正确的内容。参考代码 (画下划线部分是需填入的内容 )Dim which As IntegerPrivate Sub copy_Click()复制按钮 If which=1 Then当焦点在 Text1中,将 Text1中的内容复制给Text3Text3 Text=Text1 TextElseIf which=2 Then同理,焦点在 Text2中,将Text2中的内容复制给 Text3Text3 Text=Text2 TextEnd IfEnd SubPri
12、vate Sub cut Click()剪切按钮 If which=1 Then当焦点在 Text1中,则将内容复制给 Text3,并清空 Text1内容 Text3 Text=Text1 TextText1 Text=“ElseIf which=2 Then同上Text3 Text=Text2 TextText2 Text=“End IfEnd SubPrivate Sub edit Click()编辑 If which=1ThenIf Text1 Text=“ThenCut Enabled=FalseCopy Enabled=FalseElseCut Enabled=TrueCopy En
13、abled=TrueEnd IfElseIf which=2ThenIf Text2 Text=“ThenCut Enabled=FalseCopy Enabled=FalseElseCut Enabled=TrueCopy Enabled=TrueEnd IfEnd IfIf Text3 Text=“ThenPaste Enabled=FalseElsePaste Enabled=TrueEnd IfEnd SubPrivate Sub paste Click()粘贴按钮 If which=1 Then当焦点在 Text1中则将 Text3的内容追加到 Text1文件末尾 Text1 Text=Text1 Text+Text3 TextElseIf which=2 Then同上 Text2 Text=Text2 Text+Text3 TextEnd IfEnd SubPrivate Sub Text1 GotFocus()本过程的作用是当焦点在 Text1中时, which=1whiCh=1End SubPrivate Sub Text2 GotFocuS()本过程的作用是当焦点在 Text2中时, which=2which=2End Sub步骤 3:调试并运行程序,关闭程序后按题目要求存盘。