1、VB 机试模拟试卷 31 及答案与解析 一、基本操作题( 30分) 1 1. 在窗体上画一个文本框 (名称为 Text1)和一个命令按钮 (名称为 C1,标题为 “显示 ”),请编写 C1的 Click事件过程,使得在程序运行时,按 Esc键就调用这个事件过程且在文本框中显示 “等级考试 ”,程序运行结果如图 11所示。在程序中不能使用任何变量。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1.vbp,窗体文件名为 sjt1.frm。 2在窗体上画两个名称分别为 C1、 C2标题分别为 “第一个按钮 ”、 “第二个按钮 ”的命令按钮,其 大小相同,然后编写适当的事件过程。程序运行后
2、,如果单击 “第一个按钮 ”,则把 “第二个按钮 ”移到 “第一个按钮 ”上,使两个按钮重合,如图 12和 13所示。存盘时,工程文件名为 sjr2.vbp,窗体文件名为 sjr2.frm。二、简单应用题( 40分) 2 1. 在考生文件夹下有一个工程文件 sjt3.vbp,它的功能是在文本框中输入一个整数,单击 “移动 ”按钮后,如果输入的是正数,滚动条中的滚动框向右移动与该数相等的刻度,但如果超过了滚动条的最大刻度,则不移动,并且显示 “文本框中的数值太大 ”;如果输入的是负数, 滚动条中的滚动框向左移动与该数绝对值相等的刻度,但如果超过了滚动条的最小刻度,则不移动,并且显示 “文本框中的
3、数值太小 ”。如图 21所示。要求:去掉程序中的注释符,把程序中的 ?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分,也不能修改控件的属性。最后把修改后的程序以原来的文件名存盘。 2在考生文件夹下有一个工程文件sjt4.vhp,相应的窗体文件为 sjt4.frm。在窗体上有 2个命令按钮、 1个标签和 1个计时器,其名称分别为 Command1、 Command2、 Label1和 Tim er1,如图 22所示。程序运行后,在命令按钮 Command1中显示 “开始 ”,在命令按钮Command2中显示 “停止 ”,在标签中用字体大小为16的粗体显示 “热烈欢迎 ”(标签的 A
4、utoSize属性为 True),同时把计时器的 Interva1属性设置为 50, Enabled属性设置为 False。此时如果单击 “开始 ”命令按钮,则该按钮变为禁用,标题变为 “继续 ”,同时标签自左至右移动,每个时间间隔移动 20,如图 23所示,移动出窗体右边界后,自动从左边界开始向右移动;如果单击 “停止 ”命令按钮,则该按钮变为禁用, “继续 ”命令按钮变 为有效,同时标签停止移动;再次单击 “继续 ”命令按钮后,标签继续移动。这个程序不完整,请把它补充完整,并能正确运行。要求:去掉程序中的注释符,把程序中的 “?”改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分
5、。最后把修改后的文件按原文件名存盘。试题所提供的程序如下: Private Sub Form Load() Command1.Caption=“开始 “ Command2.Caption=“停止 “ Timer1.Interval=50 Timer1.Enabled=False Label1.Caption=“热烈欢迎 “ Label1.AutoSize=True Label1.FontSize=16 Label1.FontBold=True End Sub Private Sub Command1_Click() Command1.Caption=“继续 “ Timer1.Enabled=?
6、 Command1.Enabled=False Command2.Enabled=True End Sub Private Sub Command2_Click() Timer1.Enabled=? Command2.Enabled=False Command1.Enabled=True End Sub Private Sub Timer1_Timer() If Label1.Left Width Then Label1.Left=? Else Label1.Left=? End If End Sub 三、综合应用题( 30分) 3 在考生文件夹下有一个工程文件 sjt5.vbp,在该过程中为
7、考生提供了一个通用过程,考生可以直接调用。请在窗体上画一个名称为 Text1的文本框;画一个名称为C1,标题为 “计算 ”的 命令按钮;再画两个单选按钮,名称分别为 Op1、 Op2,标题分别为 “求 500到 600之间能被 7整除的数之和 ”、 “求 500到 600之间能被 3整除的数之和 ”(如图 31所示 )。请编写适当的事件过程,使得在运行时,选中一个单选按钮,再单击 “计算 ”按钮,就可以按照单选按钮后的文字要求计算,并把计算结果放入文本框中,最后把已经修改的工程文件和窗体文件以原来的文件名存盘。VB 机试模拟试卷 31 答案与解析 一、基本操作题( 30分) 1 【正确答案】
8、建立界面和设置控件属性。 程序用到的控件及其属性如下表 1所示。 编写程序代码。 参考代码: Private Sub C1_Click() Text1. Text “等级考试 “ End Sub 按题目要求存盘。 2 启动 Visual Basic,在窗体上画两个命令按钮。 按 F4键激活属性窗口,在属性窗口中设置两个命令按钮的属性,见表 2。 编写第 1个命令按钮的 Click事件过程; Private Sub C1_Click() C2.Top C1.Top C2.Left C1.Left End Sub 二、简单应用题( 40分) 2 【正确答案】 建立界面和设置控件属性。 题目提供了程
9、序用到的控件及其属性。如下表 3所示。 编写程序代码 题目提供的代码: Private Sub C1_Cliek() If HS1. Value+Text1. Text HS1.? Then MsgBox“文本框中的数值太大 “ Elself HS1. Value+Text1.Text ? Then MsgBox“文本框中的数值太小 “ Else ? = HS1. Value+Text1. Text End If End Sub修改后的参考代码 Private Sub C1_Cliek() If HS1. Value+Text1. Text HS1. Max Then MsgBox“文本框中的
10、值太大 “ ElselIf HS1. Value+Text1. Text HS1.Min Then MsgBox“文本框中的数值太小 “ Else HS1. Value=HS1. Value+Text1. Text End If End Sub 按题目要求存盘 2修改 完成后的代码如下: Private Sub Form_Load() Command1. Caption=“开始 “ Command2. Caption=“停止 “ Timer1.Interval=50 Timer1.Enabled=False Label1.Caption=“热烈欢迎 “ Label1.AutoSize=True
11、 Label1.FontSize=16 Label1.FontBold=True End Sub Private Sub Command1_Click() Command1.Caption=“继续 “ Timer1.Enabled=True Command1.Enabled=False Comrnand2.Enabled=True End Sub Private Sub Command2_Click() Timer1.Enabled=False Command2.Enabled=False Command1.Enabled=True End Sub Private Sub Timer1_Tim
12、er() If Label1.Left Width Then Label1. Left=Label1. Left+20 Else Label1.Left=0 End If End Sub 三、综合应用题( 30分) 3 【正确答案】 建立界面和设置控件属性。 题目提供了程序用到的控件,修改后的控件及其属性如下表 4所示。 编写程序代码。 题目提供给考生的代码: Private Function fun(a As Integer)As Integer s%=0 For i% 500 To 600 If Int (i%/a) i%/a Then s% s%+i% End If Next fun=s% End Function Private Sub Form_Unload(Cancel As Integer) Open “out5.txt“For Output As #1 Print #1,Op1. Value,Op2. Value,Text1. Text Close #1 End Sub 参考代码: Private Sub C1_Click() If Op 1. Value Then Text1. Text fun(7) ElseIf Op2.Value Then Text1.Text fun(3) End If End Sub 按题目要求存盘并进行相应的操作。