1、国家二级 VB机试(上机操作)模拟试卷 160及答案与解析 一、基本操作题 1 (1)在名称为 Ft)Filll,标题为 “框架 ”的窗体上添加一个名称为 Frame1,且标题为空的框架。框架内含有两个单选按钮,名称分别为 Opt1和 Opt2,其标题分别为“字体 ”、 “人小 ”。 注意:存盘时必须存放在考生文件夹下,工程文件名保存为sjt1 vbp,窗体文件名保存为 sjt1 frm。 (2)考生文件夹下的工程文件 sjt2 vbp中有一个由直线 Line1、 Line2和 Line3组成的三角形,直线 Line1、 Line2和 Line3的坐标值如下所示: 名称 X1 Y1 X2 Y2
2、 Line1 600 1200 1600 300 Line2 600 1200 2600 1200 Line3 1600 300 2600 1200 要求添加一条直线 Line4以构成三角形的高,且该直线的初始状态为不可见。再添加两个命令按钮,名称分别为 Cmd1、 Cmd2,标题分别为 “显示高 ”、 “隐藏高 ”,如图所示。 请编写适当的事件过程使得在程序运行时,单击“显示高 ”按钮,则显示三角形的高;单击 “隐藏高 ”按钮,则隐藏三角形的高。 注意:要求稃序中不得 使用变量,每个事件过程只能写一条语句。不得修改已经存在的控件,最后将修改后的文件按原文件名存蕊。 二、简单应用题 2 (1)
3、在考生文件央下有一个工程文件 sjt3 vbp,在 Form1的窗体中有一个文本框、一个计时器和两个命令按钮。稗序的功能是在运行时,单击 “开始计数 ”按钮,就开始计数 (如图所示 ),每隔 1秒,文本框中的数加 1;单击 “停止计数 ”按钮,则停止计数。要求:修改适当的控什的属性,并去掉程序中的注释符,把程序中的 ?改为正确的内容,使其实现上述功能,但小能修改程序中的其他部分。最后将修改后的文件以原来 的文件名存盘。 (2)已知出租乍行驶不超过 4公里时一律收费 10元。超过 4公里时分段处理,具体处理方式为: 15公里以内每公里加收 1 2元, 15公里以上每公里收 1 8元。 在考生文件
4、夹下有一个工程文件 sjt4 vbp。程序的功能是:单击 “输入 ”按钮,将弹出一个输入对话框,接收出租车行驶的里程数;单击 “计算 ”按钮,则可根据输入的里程数计算应付的出租车费,并将计算结果在名称为 Text1的文本框内显示。 在窗体文件中已经给出了全部控件 (如图所示 ),但程序不完整,要求去掉程序中的注释符,把程序中的 ?改为正确的内容。 注意:不得修改已经存在的内容和控件属性,最后将修改后的文件按原文件名存盘。 三、综合应用题 3 在学生文件夹下有一个工程文件 sjt5 vbp,窗体上有两个命令按钮,标题分别是“读数据 ”和 “统计 ”,请添加两个标签,名称分别为 Label1和 L
5、abel2,标题分别为“出现次数最多的字母是 ”和 “它出现的次数为 ”;再添加两个名称分别为 Text1和Text2,初始内容为空的文本框,如图所示。 程序功能女如下: 单击 “读数据 ”按钮,则将学生文件夹下 in5 dat文件的内容读到变量 s中 (此过程已给出 )。 单击“统 计 ”按钮,自动统计 ins dat文件中所含各字母 (不区分大小写 )出现的次数,并统计次数最多的字母显示在 Text1文本框内,它所出现的次数显示在在 Text2文本框内。 “读数据 ”按钮的 Click事件过程已经给出,请为 “统计 ”按钮编写适当的事件过程实现上述功能。 注意:考生小得修改窗休文件中已经存
6、在的控件和程序,在结束程序运行之前,必须进行统计,且必须用窗休右上角的关闭按钮结束程序,否则无成绩。最后,程序按原文件名存盘。 国家二级 VB机试(上机操作)模拟试卷 160答案与解析 一、基本操作题 1 【正确答 案】 (1)【操作步骤】 步骤 1:建立界面,添加相应的控什并设置控什的属性。程序中涉及的控件及属性见表 3 56。步骤 2:调试并运行程序,关闭程序后按题目要求存盘。 (2)【操作步骤】 步骤 1:打开 sjf2工程,按照题目要求建市 Line控件并设置其属性,如图 3 33所示。步骤 2:按照步骤 1建立其他控件并设置相关属性,程序中涉及的控件及属性见表3 57。 步骤 3:打
7、开代码编辑窗口,在指定位置编写如下代码。 参考答案 Private Sub Cmdl Click() Line4 Visible True将 Line4显示 End Sub Private Sub Cmd2 Click() Line4 Visible False将 Line4隐藏 End Sub 步骤 4:调试并运行程序,关闭程序后按题目要求存盘。 二、简单应用题 2 【正确答案】 (1)【操作步骤】 步骤 1:打开本题工程文件,设置计时器 Interval属性为 1000 Enabled属性设置为 False。 步骤 2:打开代码编辑窗口,去掉程序中的注释符 “”,将问号改为正确的内容。 参
8、考答案 Private Sub C1_C1ick(Index As Integer) Select Case Index通过控件下标确定单击哪一个按钮 Case 1 Timer1 Enabled False Case 0控制下标从 0开始,此处应为 0 Timer1 Enabled True End Select End Sub Private Sub Timer1 Timer() Text1 Text Text1 Text 1Text1中的内容加 1显示 End Sub 步骤 3:凋试并运行程序,关闭程序后按题目要求存盘。 (2)【操作步骤】 步骤 1:打丌本题工程文件。 步骤 2:打开代码
9、编辑窗口,去掉程序中的注释符 “”,将问号改为正确的内容。 参考答案 Dim s As Integer Private Sub Command1_Click() s Val(InputBox(“输入里程数 (单位:公里 )“)s用于存储里程教 End Sub Private Sub Command2_Click() If s 0 Then Select Case s对 s进行判断 Case Is 4 f 10根据题意 s 4时 f 10 Case Is 15 f 10 (s 4)*1 2同理 Case Is 15 f 10 11*1 2 (s 15)*1 8同理 End Select Text
10、1 Text f在 Text1中显示结果 Else MsgBox“请单击 “输入 “按钮输入里程数 !“ End If End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存柱。 三、综合应用题 3 【正确答案】 【操作步骤】 步骤 1:打开本题工程文件,添加两个标签控件,名称分别为 Label1和Labe12,标题分别为 “出现次数最多的字母是 ”和 “它出现的次数为 ”;再添加两个名称分别为 Text1和 Text2,初始值为空的文本框。 步骤 2:打开代码编辑窗口,在指定位置编写如下代码。 参考答案 Dim a(1 To 26)As Integer定文数 组 a用于存放字母出现
11、个数 Dim max As Integer n Len(s)Len的功能是求字符串的长度 For i 1 To n k Asc(Mid$(s, i, 1)依次获取字符 If(k 65 And k 90)Then a(k 64) a(k 64) 1当为大写字母时,满足条件则计数 End If If(k 97 And k 122)Then a(k 96) a(k 96) 1当为小写字母时,满足条件则计数 End If Next i max 0 For m 1 To 26循环查找出现次数最多的值 If maxa(m)Then max a(m) End If Next m Text2 max显示出现次敷 For m 1 To 26找到出现次数最多的值的下标 If a(m) max Then 1 m将下标记下 End If Next m Text1 Chr(1 64)通过下标找到对应的 字母 步骤 3:调试并运行程序,关闭程序后按题目要求存楹。