1、国家二级 VB机试(上机操作)模拟试卷 328及答案与解析 一、基本操作题 1 (1)在名称为 Forml的窗体上添加一个名称为 Commandl的命令按钮,标题为 “打开文件 ”,再添加一个名称为 CDl的通用对话框。程序运行后,如果单击命令按钮,则弹出打开文件对话框,请按下列要求设置属性和编写代码: 设置适当属性,使对话框的标题为 “打开文件 ”; 设置适当属性,使对话框的 “文件类型 ”下拉式组合框中有两项可供选择: “文本文件 ”、 “所有文件 ”(如图所示 ),默认的类型是 “所有文件 ”; 编写命令按钮的事件过程,使得单 击按钮可以弹出 “打开文件 ”对话框。 要求:程序中不得使用
2、变量,事件过程中只能写入一条语句。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt1 vbp,窗体文件名保存为sjt1 frm。(2)在名称为 Form1的窗体上添加一个名称为 Command1的命令按钮,其标题为 “移动本按钮 ”,如图所示。 要求编写适当的事件过程,使得程序运行时,每单击按钮一次,按钮向左移动 100。 要求:程序中不得使用变量,事件过程中只能写入一条语句。 注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt2 vbp, 窗体文件名保存为 sjt2 frm。 二、简单应用题 2 (1)在考生文件夹下有一个工程文件 sjt3 vbp,相应的窗体文件为 s
3、jt3 frm。其功能是随机产生 30个 0 1000的整数,放入一个数组中,然后输出其中的最小值。程序运行后,单击命令按钮 (名称为 Command1,标题为 “输出最小值 ”),即可求出其最小值,并在窗体上显示出来 (如图所示 )。这个程序不完整,请把它补充完整,并使其能正确运行。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后将 修改后的文件按原名存盘。 (2)在考生文件夹下有一个工程文件sjt4 vbp,相应的窗体文件为 sjt4 frm,在窗体上有一个文本框和一个命令按钮。程序运行后,单击命令按钮,即可计算出 0 1000范
4、围内不能被 7整除的整数的个数,并在文本框中显示出来。在窗体的代码窗口中,已给出了部分程序,其中计算不能被 7整除的整数的个数的操作在通用过程 Fun中实现,请编写该过程的代码。 要求:请勿改动程序中的任何内容,只在 Function Fun()和 End Function之间填入你编写的若干语句。最后将修改后的文件按原文 件名存盘。 三、综合应用题 3 在考生文件夹下有一个工程文件 Sjt5 vbp,窗体上有三个文本框,其名称分别为 Text1、 Text2和 Text3,其中 Text1、 Text2可多行显示。请添加三个命令按钮,名称分别为 Cmd1、 Cmd2和 Cmd3,标题分别为
5、“产生数组 ”、 “统计 ”和 “退出 ”,如图所示。程序功能如下: 单击 “产生数组 ”按钮时,随机生成 20个 010之间 (不含 0和 10)的数值,并将其保存到一维数组 a中,同时也将这 20个数值在 Text1文本框内显示。 单击 “统计 ”按钮时,统计出数组 a中出现频率 最高的数值及其出现的次数,并将出现频率最高的数值在 Text2文本框内显示、出现频率最高的次数在 Text3文本框内显示。 单击 “退出 ”按钮时,结束程序运行。 注意:不得修改窗体文件中已经存在的控件和程序,最后将修改后的文件按原文件名存盘。国家二级 VB机试(上机操作)模拟试卷 328答案与解析 一、基本操作
6、题 1 【正确答案】 (1) 【操作步骤】 步骤 1:新建一个窗体,按照要求建立控件并设置其属性,如图 3 21所示。程序中用到的控件及属性见表 3 13。步骤 2:打开代码编辑窗口,在指定位置编写如下 代码。 Private sub Commandl_Click() CD1 ShowOpen显示打开文件对话框 End Sub步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 (2) 【操作步骤】 步骤 1:新建一个窗体,按照要求建立控件并设置相应属性如表 3 14所示。步骤 2:打开代码编辑窗口 ,在指定位置编写如下代码。 PriVate sub Commandl_Click() Comm
7、and1 Left=Command1 Left-100 End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 二、简单应用题 2 【正确答案】 (1) 【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:打开代码编辑窗口,去掉程序中的注释符 “”,将问号改为正确的内容。 Option Base 1 Private Sub Commandl_Click() Dim arrN(30)As Integer Dim Min As Integer Randomi ze For i=1 To 30 arrN(i)=Int(Rnd*1000) Next i Min=arrN(1)将第一个数
8、赋给 Min,以提供判断 For i=2 To 30 If arrN(i) Min Then比较最小值与其他数值,找出最小值 Min=arrN(i) End If Next i Print Min End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 (2) 【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:打开代码编辑窗口,在代码编辑窗口指定位置编写以下代码。 Function Fun() Dim s As Integer, i As Integer For i=0 To 1000求 01000中满足条件的数 If i Mod 70 Then s=s+1将满足条件的数的个
9、数累加 End If Next i Fun=s返回结果 End Function 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 三、综合应用题 3 【正确答案】 【操作步骤】 步骤 1:打开本题工程文件,设置控件的属性。程序中用到的控件及属性见表 3 55。步骤 2:打开代码编辑窗口,去掉程序中的注释符 “”,将问题改为正确的内容。 Option Base 1 Dim a(20)As Integer, b(20)As Inte。 ger Private Sub Cmdl_Click() Text1 Text=”:Text2 Text=”: Text3 Text=” For i=1 To
10、 20 a(i)=Fix(Rnd*9+1)生成 010的数值并存入数组 a中 b(i)=1 Text1 Text=Text1 Text+Str(a(i)+Space(2)将生成的数显示在 Text1中 Next i End Sub Private Sub Cmd2_Click() fmax=0 For i=1 To 20 For j=1 To i 1数组共有 20个数字 If a(i)=a(j)Then b(i)=b(i)+1依次存入对应数出现的频率 End If Next j If b(i) fmax Then fmax=b(i)该次得到的数出现频率与目前出现频率最多的数比较,若大于目前的数,则将最大的数改为该次得到的数 Next i For i=1 To 20 If b(i)=fmax Then从数组中找到与 fmax相同的值 Text2 Text=Text2 Text+Str(a(i)+Space(2) End If Next i Text3 Text=fmax End Sub Private Sub Cmd3 Click() End当单击 ”结束 ”按钮时,则退出程序 End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。