1、国家二级 VB机试(上机操作)模拟试卷 361及答案与解析 一、基本操作题 1 (1)在名称为 Form1、标题为 “图片 ”的窗体上画一个名称为 Imagel的图像框,其高为 2500、宽为 2000。请通过属性窗口设置适当属性,装入考生目录下的图片文件picl jpg,并使图片适应图像框的大小 (如图 3 156所示 )。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjtl vbp,窗体文件名为 sjtl frm。(2)在名称为 Form1的窗体上画一个名称为 Label1、标题为“口令 ”的标签;画一个名称为 Text1的文本框;再画三个命令按钮,名称分别为Command1、 C
2、ommand2、 Command3,标题分别为 “显示口令 ”、 “隐藏口令 ”、 “重新输入 ”。 程序运行时,在 Text1中输入若干字符,单击 “隐藏口令 “按钮,则只显示同样数量的 “*”,如图 3 157(b)所示;单击 “显示口令 ”按钮,则显示输入的字符,如图 3 157(a)所示,单击 “重新输入 “按钮,则清除 Text1中的内容,并把光标定位到 Text1中。 要求:请画出所有控件,编写命令按钮的 Click事件过程,程序中不得使用变量,在 “显示口令 ”按钮、 “隐藏口令 ”按钮的事件过程中只能写一条语句。存盘时必须存放在考生文件夹下,工程文件名为 sjt2 vbp,窗体
3、文件名为sjt2 frm。 二、简单应用题 2 (1)考生文件夹下的工程文件 sjt3 vbp中有一个初始内容为空、且带有垂直滚动条的文本框,其名称为 Text1;两个标题分别为 “读数据 ”和 “查找 “的命令按钮,其名称分别为 Cmdl、 Cmd2。请画一个标题为 “查找结果 ”的标签 Label1,再画一个名称为 Text2,其初始内容为空的文本框,如图 3 104所示。程序功能如下: 单击 “读数据 ”按钮,则将考生文件夹下 in3 dat文件中已按升序排列的 30个整数读入一维数组 a中,并同时显示在 Text1文本框内; 单击 “查找 ”按钮,将弹出输入框接收用户输入的任意一个偶数
4、,若接收的数为奇数,则提示重新输入。如果接收的偶数超出一维数组 a的数值范围,则无须进行相应查找工作,直接在 Text2内给出结果;否则,在一维数组 a中查找该数,并根据查找结果在 Text2文本框内显示相应信息。命令按钮的 Click事件过程已给出,但 “查找 ”按钮的 Click事件过程不完整,请将其中的注释符去掉,把 “?”改为正确的内容,以实现上述程序功能。 注意: 考生不得修改窗体文件中已经存在的控件和程序,最后程序按原文件名存盘。 (2)考生文件夹下的工程文件 sjt4 vbp中有一个初始内容为空的文本框 Text1,一个包含三个元素的文本框控件数组 Text2,两个标题分别是 “
5、读数据 “和 “统计 ”的命令按钮,两个分别含有三个元素的标签控件数组 Label1和 Label2,如图 3 105所示。程序功能如下: 考生文件夹下 jal4 dat文件中存有 20个考生的考号及数学和语文单科考试成绩。单击 “读数据 ”按钮,可以将 in4 dat文件内容读入到 20行3列的二维数组 a中,并同时显 示在 Text1文本框内; 单击 “统计 ”按钮,则对考生数学和语文的平均分在 “优秀 ”、 “通过 “和 “不通过 ”三个分数段的人数进行统计,并将人数统计结果显示在控件数组 Text2中相应位置。其中,平均分在 85分以上(含 85分 )为 “优秀 ”,平均分在 60 8
6、5分之间 (含 60分 )为 “通过 ”,平均分在 60分以下为 “不通过 “。 命令按钮的 Click事件过程已经给出,但 “统计 ”按钮的 Click事件过程不完整,请将其中的注释符去掉,把 “?”改为正确的内容,以实现上述程序功能。 注意:考生不得修改窗体文件中已经存在的控件和程序,最 后程序按原文件名存盘。 三、综合应用题 3 在考生目录下有一个工程文件 sjt5 vbp。运行程序后,单击 “读数据 ”按钮,从data5 dat文件中读出一个数据,并显示在标签 Label1中;单击 “找素数 ”按钮,则在大于 Label1的数据范围内找出最小的素数,并将其显示在标签 Label2中。
7、在给出的窗体文件中已经有了全部控件,并给出了读写文件和判断素数的程序代码。但程序不完整。 要求:去掉程序中的注释符,把程序中的 “?”改为正确的内容,并编写相应程序段,实现程序功能。 注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。程序调试通过后,各命令按钮的事件过程必须至少各执行一次。 国家二级 VB机试(上机操作)模拟试卷 361答案与解析 一、基本操作题 1 【正确答案】 (1)步骤 1:新建一个 “标准 EXE”工程,画出控件并设置相应属性。 步骤 2:按要求将文件保存至考生文件夹中。 (2)步骤 1:新建一个 “标准 EXE”工程,按要求画出控件并设置属性。
8、 步骤 2:在代码编辑窗口,分别编写三个按钮的单击事件过程。参考代码: Private Sub Command1_Click() Text1 PasswordChar=“ End Sub Private Sub Command2_Click() Text1 PasswordChar=“*“ End Sub Private Sub Command3_Click() Text1=“ Text1 SetFocus End Sub 步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 (1)本题只需要在窗体上画出控件并相应设置其属性即可。 (2)PasswordChar属性用于设置屏蔽文本框中内容
9、的字符,要去掉对文本框中输入内容的屏蔽,需将其 PasswordChar属性值清空,使用 SetFocus方法可使文本获得焦点。 二、简单应用题 2 【正确答案】 (1)步骤 1:打开考生文件夹下的工程文件 sjt3 vbp,打开代码编辑窗口,去掉程序中的注释符 “”,将问号 “?”改为正确的内容。参考代码: If num 2 30 Then 步骤 2:按要求将文件保存至考生文件夹中。 (2)步骤 1:打开考生文件夹中的本题工程文件 sjt4 vbp,打开代码编辑窗口,去掉程序中的注释符 “”,将问号 “?”改为正确的内容。参考代码: Avg=(a(i, 2)+a(i, 3) 2 Case I
10、s=85 Case 60 To 84 End Select Text2(n-1)=x(n) 步骤 2:按要求将文件保存至考生文件夹中。 【试题解析】 (1)在 “查找 ”按钮的单击事件中,首先使用变量 hum接收输入框的值,然 后判断 num是否为偶数,如果为奇数 (num 2Fix(num 2)则提示错误信息;由于数组 a是升序排列的,因此如果 num的值小于 a(1)或者大于 a(30)则意味着超出范围;接下来使用 For循环遍历整个数组,如果某次循环中数组元素等于 hum的值则意味着找到,可以退出循环;当循环结束后如果 n的值大于 30则表明循环是正常结束的,没有找到这个元素。 (2)本
11、题要求编写 “统计 ”按钮的单击事件过程。程序设计思路:在一个 For循环中逐一取出存于数组 a中的各学生成绩,将同一行的两个成绩取平均值后用 Select Case语句对平均值进行判断,根据成绩所属情况,使对应的 x数组元素中的数增1,最后显示在文本框数组中。 三、综合应用题 3 【正确答案】 步骤 1:打开考生文件夹中的工程文件 sjt5 vbp,在代码编辑窗口中,去掉程序中的注释符 “”,将问号 “?“改为正确的内容。参考代码:步骤 2:按键运行程序,单击各个按钮测试验证。 步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 题目要求找出大于某个值的最小素数,可以是 While循环或者 Do While循环。循环变量 n的起始条件是标签 1的值 +1,在循 环体内部循环变量增加1,循环结束条件是 p(n)返回值不会 False。 第一个 “?”处是把从文件里面读出来的 x值显示在标签上,第二个 “?”处是关闭打开的文件。