1、VB 机试模拟试卷 49 及答案与解析 一、基本操作题( 30分) 1 在窗体上创建两个单选按钮,名称分别为 Option1和 Option2,标题分别为 “100到 300之间的质数 ”和 “200到 400之间的质数 ”,以及一个文本框,名称为 Text1。在窗体上创建两个命令按钮,名称分别为 Command1和 Command2,标题分别为 “计算 ”和 “保存数据 ”。编写事件过程,程序运行后,单击 “计算 ”按钮,则计算出该单选按钮标题所指明的所有质数之和,并在文本框中输出。单击 “保存数据 ”,存入out.txt文件中,该文件必须放在 考生文件夹中 (在考生文件夹中有标准模块mod
2、ule1.bas,其中的 savedata过程可以把计算结果写入指定文件,用 check函数可以判断某整数是否为质数,是则返回 True,否则返回 False。 )程序运行界面如图30所示。要求实现题目给出的功能,并将文件保存在考生文件夹下,工程文件名为 ylc.vbp。 二、简单应用题( 40分) 2 注意:下面出现的 “考生文件夹 ”均为 C:wexam25160002。 (1) 在考生文件夹下有一个工程文件 sjt3.vbp,两个窗体文件,文件名分别为 sjt31.frm和 sjt31.frm。此工程实现的功能是,在运行时只显示名为 Form2的窗体,单击 Form2上的 C2按钮,则显
3、示名为 Form1的窗体;单击 Form1上的 C1按钮,则 Form1的窗体消失。这个程序并不完整,要求: 把 Form2设为启动窗体;把 Form1上按钮的标题改为 “隐藏 ”,把 Form2上按钮的标题改为 “显示 ”。去掉程序中的注释符,把程序中的 ?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件存盘。程序正确运行后的界面如图 26-3所示。 注意:工程文件和窗体文件仍以原来的文件名 存盘。 (2) 在考生文件夹下有一个工程文件 sjt4.vbp,它的功能是在文本框中输入一个整数,单击 “移动 ”按钮后,如果输入的是正数,滚动条中的滚动框向右移动与该数
4、相等的刻度,但如果超过了滚动条的最大刻度,则不移动,并且显示 “文本框中的数值太大 ”;如果输入的是负数,滚动条中的滚动框向左移动与该数相等的刻度,但如果超过了滚动条的最小刻度,则不移动,并且显示 “文本框中的数值太小 ”。程序运行界面如图 26-4所示。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分, 也不能修改控件的属性。最后把修改后的程序以原来的文件名存盘。VB 机试模拟试卷 49 答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1)Visual Basic集成环境中,执行 “文件 ”“ 打开工程 ”命令,选择ylc.v
5、bp文件打开。 (2)执行 “工程 ”“ 添加模块 ”命令,在 “打开模块 ”对话框中,打开 “标准模块 ” modulel.bas。 (3)在工具箱中选择单选按钮控件,在窗体上创建两个单选按钮,名称分别为Option1和 Option2,标题分别为 “100到 300之间的质数 ”和 “200到 400之间的质数 ”。 (4)在窗体上创建命令按钮名称分别为 Command1和 Command2,标题分别为 “计算 ”和 “存盘 ”。 (5)定义模块级数组,在模块的声明段声明,其代码如下: Dim a(1 To 100) As Integer Dim count As Integer (6)双
6、击 “计算 ”按钮,弹出代码窗口,在其中添加如下代码: Dim count As Integer Private Sub Command1_Click() Dim i As Integer If Optionl, Value Then For i=100 To 300 If module1.check(i) Then count=count+i End If Next i Else For i=200 To 400 If module1.check(i) Then count=count+i End If Next i End If Text1.Text=count End Sub (7)调用
7、 savedata过程,把文件中的数值读到指定的数组中保存事件。其代码如下: Private Sub Command2_Click() Dim str As Integer str=CStr(count) Call module1.SaveData(“out.txt“, count) End Sub (8)双击 “保存数据 ”按钮弹出代码窗口,在其中添加如下代码: Private Sub Command3_Click() Call SaveData(Text1.Text) End Sub Sub SaveData(str As String) Open app.Path & “&“out.tx
8、t“For Output As #1 Print count Close#1 End Sub (9)按 F5键运行程序 。如图 30所示。 (10)执行 “文件 ”一 “保存工程 ”命令,将工程文件命名为 ylc.vbp,窗体文件命名为 ylc.frm。 【试题解析】 (1)本题是一个综合应用题,根据题目的要求添加模块、创建单选按钮、命令按钮及文本框,并设置其属性。 (2)在命令按钮的单击事件中,调用模块中的函数过程,判断质数,并累计某段区间的质数总和。在文本框中输出结果,并将该结果写入指定文件中。 二、简单应用题( 40分) 2 【正确答案】 在窗体建立好控件后,先设置控件属性,再事件过程。
9、 命令按钮的标题通过 Caption属性修改。单击命令按钮触发 Click事件。在多窗体中,可以指定启动窗体,方法是:点击 “工程 ”菜单下的 “工程属性 ”命令,打开 “工程属性 ”对话框,然后单击 “启动对象 ”栏右端的箭头,下拉显示当前工程中的所有窗体的列表,单击要作为启动窗体的对象名,然后单击 “确定 ”按钮,即可把所选窗体设置为启动窗体。要使窗体显示或隐藏可以设置窗体的 Visible属性,设置为 False时,窗体隐藏设置为 True时,窗体显示。解题步骤: 第一步:建立界面并设置控件属性。 程序提供了需要的控件,只需修改这些控件属性即可。 Form1 用到 的控件及其属性见表 2
10、6-3。 Form2用到的控件及其属性见表 26-4。 建立好控件后,将窗体 Form2设置为启动窗体。 第二步:编写程序代码。 题目提供的代码: 窗体1的代码: Private Sub C1_Click() Form1.Visible = ? End Sub 窗体 2的代码: Private Sub C2_Click() Form1.visible = ? End Sub 第三步:调试并运行程序。 第四步;按题目要求存盘。滚动条能表示的最大值有 Max属性设置,最小值由 Min属性设置 。滚动条的当前值由 Value属性设置。当 Value值大于 Max属性或小于 Min属性值时,用 Msg
11、box语句生成消息框。解题步骤: 第一步:编写程序代码: 题目提供代码: Private Sub C1_Click() If HS1.Value + Text1.Text HS1.? Then MsgBox “文本框中的数值太大 “ ElseIf HS1.Value + Text1.Text ? Then MsgBox “文本框中的数值太小 “ Else(2) ? = HS1.Value + Text1.Text End If End Sub 参考代码: Private Sub C1_Click() If HS1.Value + Text1.Text HS1.Max Then MsgBox “文本框中数值太大 “ ElseIf HS1.Value + Text1.Text HS1.Min Then MsgBox “文本框中的数值太小 “ Else HS1.Value = HS1.Value + Textl.Text End If End Sub 第二步;调试并运行程序。 第三步:按题目要求存盘。