1、国家二级 VB机试(上机操作)模拟试卷 365及答案与解析 一、基本操作题 1 (1)在名称为 Form1的窗体上添加一个计时器控件,名称为 Timerl。请利用属性窗口设置适当属性,使得在运行时可以每隔 1秒,调用计时器的 Timer事件过程一次。另外,请把窗体的标题设置为 “题目 2”。设计阶段的窗体如图 3 73所示。 (2)在名称为 Form1的窗体上画一个文本框,名称为 Text1,无初始内容;再画一个图片框,名称为 Pl。请编写适当的事件过程,使得在运行时,在文本框中每输入一个字符,就在图片框中输出一行文本框中的完 整内容,运行时的窗体如图 3 74所示。程序中不能使用任何变量。
2、注意:保存时必须存放在考生文件夹下,工程文件名为 sjt2 vbp,窗体文件名为sjt2 frm 二、简单应用题 2 (1)在考生文件夹下有一个工程文件 sjt3 vbp,窗体上有 1个标题为 “计算 ”的命令按钮, 1个标题为 “1!+2!+10!=” 的标签。请画 1个名称为 Text1,初始内容为空的文本框。效果如图 3 34所示。 程序功能:单击 “计算 ”命令按钮,则计算“1!+2!+10!” 的值,并将结果显示在 Text1文本框中。请将 “计算 ”命 令按钮的Click事件过程中的注释符去掉,把 “?”改为正确的内容,以实现上述程序功能。 注意:考生不得修改窗体文件中已经存在的控
3、件和程序,最后,程序按原文件名存盘。 (2)在考生文件夹下有一个工程文件sjt4 vbp,窗体上有 1个名称为标题为 “运行 ”的命令按钮。请画 2个名称分别为Text1和 Text2,初始内容都为空的文本框,再画 2个名称分别为 Label1、 Label2,标题分别是 “最大数 ”和 “最大数位置 ”的标签。效果如图 3-35所示。程序功能:单击 “运行 ”按钮,则产生 50个不重复的介于 0和 100之间 (含 0和 100)的随机数,且以每行 10个数的形式显示在窗体上;最后将这些随机数中的最大数和最大数所处的位置显示在 Text1和Text2中。如图 3-35所示为某一次的运行效果。
4、 请将 “运行 ”命令按钮的 Click事件过程中的注释符去掉,把 “?”改为正确内容,以实现上述程序功能。 注意:考生不得修改窗体文件中已经存在的控件和程序,最后,程序按原文件名存盘。 三、综合应用题 3 在考生的文件夹下有一个工程文件 sjt5 vbp,相应的窗体文件为 sjt5 frm。在窗体上有两个命令按钮,其名称分别为 Command1和 Cornrnand2,标题分别为 “写文件 ”和 “读文件 ”,如图 3 131(a)所示。其中 “写文件 ”命令按钮事件过程用来建立一个通信录,以随机存取方式保存到文件 t5 txt中;而 “读文件 ”命令按钮事件过程用来读出文件 t5 txt中
5、的每个记录,并在窗体上显示出来。通信录中的每个记录由三个字段组成,结构如下: 姓名 (Name) 电话 (Tel) 邮政编码 (Pos) LiuMingliang (010)62781234 100082 各字段的类型和长度为: 姓名 (Name):字符串 15 电话(Tel):字符串 15 邮 政编码 (Pos):长整型 (Long) 程序运行后,如果单击 “写文件 ”命令按钮,则可以随机存取方式打开文件 t5 txt,并根据提示向文件中添加记录,每写入一个记录后,都要询问是否再输入新记录,回答 “Y”(或 “y”)则输入新记录,回答 “N”(或 “n”)则停止输入;如果单击 “读文件 “命
6、令按钮,则可以随机存取方式打开文件 t5 txt,读出文件中的全部记录,并在窗体上显示出来,如图3 131(b)所示。该程序不完整,请把它补充完整。要求如下: 去掉程序中的注释符,把程序中的 ?改为正确内容,使其能正确运行,但不能修 改程序中的其他部分。 文件 t5 txt中已有三个记录,如图 3 131(1)所示,请运行程序,单击 “写文件 ”命令按钮,向文件 t5 txt中添加以下两个记录 (全部采用西文方式 ): LiDaqing (027)873487654 30065 ChenQingshan (022)26874321 300120 运行程后,单击 “读文件 ”命令按钮,在窗体上显
7、示全部记录 (共 5个 )。 用原来的文件名保存工程文件和窗体文件。国家二级 VB机试(上机操作)模拟试卷 365答案与解析 一、基本操作题 1 【正确答案】 (1)步骤 1:新建一个 “标准 EXE”工程,如表 4-45在窗体中画出控件并设置其相关属性。 步骤2:按要求将文件保存至考生文件夹中。 (2)步骤 1:新建一个 “标准 EXE”工程,如表 4-46在窗体中画出控件并设置其相关属性。步骤 2:打开代码编辑窗口,编写命令按钮的单击事件过程。参考代码: Private Sub Text1_Change()P1 Print Text1 TextEnd Sub 步骤 3:按要求将文件保存至考
8、生文件夹中。 【试题解析】 (1)本题只需按要求画出控件并设置其 相关属性即可。 (2)要实现本题所要求的功能,可在文本框的 Change事件过程中,将当前文本框中的文本用 Print方法输出到图片框中。 二、简单应用题 2 【正确答案】 (1)步骤 1:打开考生文件夹中的本题工程文件 sjt3 vbp,在窗体上添加一个文本框,按照如下表 4-22设置属性。步骤 2:在代码编辑窗口中,去掉程序中的注释符 “”,将问号 “?”改为正确的内容。参考代码: While i 步骤 2:在代码编辑窗口中,去掉程序中的注释符 “”,将问号 “?”改为正确的内容。参考代码: j = 1j = j + 1ar
9、r(j) =xpos=i-1 步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 (1)题目要求计算一个数列和,数列的每一项是一个阶乘。分析代码可知,函数 ic返回一个整数的阶乘值。在命令按钮的 Click事件代码里面,通过 While循环来计算累加和。 第一个 “?”处补充循环的结束条件,根据题目要求,计算 10个元素的累加和,因此驯化执行 10次:第二个 “?”处是补充循环变量 i的变化条件,在循环中 i每次增加 1,每次需要计算 i的阶乘;第三爪 “?”处是初始化变量 t为 1;第四个 “?”处是补充循环结束条件,计算阶乘的时候需要做 n次连乘,循环执行 n次;最后一个 “?”处是
10、补充函数返回值, t变量保存的阶乘值,因此函数返回 t。 (2)题目要求生成 50个不重复的随机数,并在这 50个随机数里面找出最大值。分析程序可知,通过嵌套的循环来实现不重复随机数生产和最大值查找。 第一个 “?”处是设置循环变量 i恶道初始值,根据 “Do While j “N“ RecNum=LOF(1) Len(Pers) Get #1, i, Pers 步骤 2:按 键运行程序,先单击 “写文件 ”按钮,然后在弹出的输入框中依次按照题目要求输入两条记录,再单击 “读文件 ”按钮在窗体上显示结果。 步骤 3:按要求将文件保存至考生文件夹中。 【试题解析】 在 “写文件 ”命令按钮的 Click事件过程中,用 Open语句打开考生文件夹下的文件 t5 txt,变量 RecNurn代表记录个数,在 DoLoop 循环中 (以输入的不是 “N”作为循环条件 ),用 Put语句将记录变量 Pers写入随机文件中相应记录号 的记录,然后令记录号加 1以便下次继续写入。在 “读文件 ”命令按钮的 Crick事件过程中,用 Open语句打开文件 t5 txt,同样使用变量 RecNum代表记录个数,然后再一个 For循环中依次使用 Get语句取出每一个记录并且显示。