1、VB 机试模拟试卷 18 及答案与解析 一、基本操作题( 30分) 1 注意:下面出现的 “考生文件夹 ”均为 c: wexam25160001。 请根据以下各小题的要求设计 Visual Basic应用程序 (包括界面和代码 )。 (1) 在名称为 Form1的窗体上添加一个计时器控件,名称为 Timer1。请利用 “属性 ”窗口设置适当属性,使得在运行时可以每隔 1秒,调用计时器的 Timer事件过程一次。另外,请把窗体的标题设置为 “题目 2”。设计阶段的窗体如图 18-1所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1.vbp,窗体文件名为 sjt1.frm。 (2)
2、 在名称为 Form1的窗体上画一个文本框,名称为 Text1,无初始内容;再画一个图片框,名称为 P1。请编写 Text1的 Chang事件过程,不能使用任何变量,使得运行时,在文本框中每输入一个字符,就在图片框中输出一行文本框中的完整内容。程序运行界面如图18-2所示。 注意:保存时必须存放在考生文件夹下,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。 二、简单应用题( 40分) 2 注意:下面出现的 “考生文件夹 ”均为 c: wexam25160001。 (1) 在考生文件夹下有一个工程文件 sjt3.vbp,窗体中有两个图片框 ?名称分别为 P1和 P2,其中的图片
3、分别是一个航天器和一朵云,还有一个计时器控件,名称为 Timer1,一个命令按钮,名称为 C1,标题为 “发射 ”。窗体文件中给出了两个事件过程,但并不完整,要求:设置计时器控件的属性,使其在初始状态下不计时;设置计时器的属性,使其每隔 0.1秒调用 Timer事件过程一次。 去掉程序中的注释符,把程序中的 ?改为正确的内容,使得在运行时单击 “发射 ”按钮,则航天飞机每隔 0.1秒向上移动一次,当到达 P2的 下方时停止移动。程序运行界面如图 20-3所示。 注意:不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。 (2) 在考生文件夹下有一个工程文件 sjt4.vbp,窗体上已经
4、有两个文本框,名称分别为 Text1和 Text2;一个命令按钮,名称为 C1,标题为 “确定 ”。请画两个单选按钮,名称分别为 Op1和 Op2,标题分别为 “男生 ”和 “女生 ”;再画两个复选框,名称分别为 Ch1和 Ch2,标题分别为 “体育 ”和 “音乐 ”。请编写适当的事件过程,使得在运行时,单击 “确定 ”按钮后实现下面的要求: 根据选中的单选按钮,在 Text1中显示 “我是男生 ”或 “我是女生 ”;根据选中的复选框,在 Text2中显示 “我的爱好是体育 ”或 “我的爱好是音乐 ”或 “我的爱好是体育音乐 ”。程序运行界面如图 20-4所示。 注意:不得修改已经给出的程序和
5、已有控件的属性。在结束程序运行之前,必须选中一个单选按钮和至少一个复选框,并单击 “确定 ”按钮。必须使用窗体右上角的关闭按钮结束程序,否则无成绩。 三、综合应用题( 30分) 3 注意:下面出现的 “考生文件夹 ”均为 c: wexam25160001。 在考生文件夹下有一个工程文件 sjt5.vbp,其窗体上 有两个标签 L1 和 L2,标题分别为 “口令 ”和 “允许次数 ”;一个命令按钮 C1,标题为 “确定 ”:两个文本框名称分别为为 Text1和Text2,其中 Text1用来输入口令 (输入时,显示 “*”),无初始内容; Text2的初始内容为 3。 程序给出了 C1的事件过程
6、,但不完整,要求去掉程序中的注释符,把程序中的 ?改为正确内容,使得在运行时,在 Text1中输入口令后,单击 “确定 ”按钮,如果输入的是 “123456”则在 Text1中显示 “口令正确 ”;如果输入其他内容,单击 “确定 ”后,弹出如图 19-5所示的错误提示对话框,并且 Text2中的数字减 1。最多可输入 3次口令,若 3次都输入错误,则禁止再次输入。 注意:不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。VB 机试模拟试卷 18 答案与解析 一、基本操作题( 30分) 1 【正确答案】 时钟控件的 Interval属性,表示两个计时器事件之间的时间间隔,其值以 ms(
7、0.001s)为单位,题目要求每 1秒产生一个计时器事件,那么 Interval属性应该设置为 1000;窗体的标题由窗体的 Caption属性设置。解题步骤: 第一步:建立界面并设置控件属性。程序用到的控件及其属 性见表 18-1。第二步:调试并运行程序。 第三步:按题目要求存盘。 (2)当用户向文本框中输入新信息,或当程序把 Text属性设置为新值从而改变文本框的 Text属性时,将触发 Change事件。程序运行后,在文本框中每键入一个字符,就会引发一次 Change事件。 在图片框中显示打印信息应使用 Print方法,其形式为: 对象 . Print要显示的内容。解题步骤: 第一步:建
8、立界面并设置控件属性。程序用到的控件及其属性见表 18-2。 第二步:编写程序代码。 参考代码: Option Explicit Private Sub Text1 Change() P1.Print Text1.Text End Sub 第三步:调试并运行程序。 第四步:按题目要求存盘。 二、简单应用题( 40分) 2 【正确答案】 控件已经建立完好,只需设计事件过程即可。 Timer1控件的Interval属性是用来控制计时器事件发生的时间间隔,通过题意可知该属性设置为100(Interval是以毫秒为单位 )。当单击 “发射 ”按钮时开始计时,把计时器控件的Enabled属性设置为 Tr
9、ue。如果使航天器即 P1停止移动,需要 将计时器控件的Enagled属性设置为 False。解题步骤: 第一步:建立界面并设置控件属性。程序用到的控件及其属性见表 20-3。第二步:编写程序代码。 程序提供的代码: Private Sub C1_Click() Timer1.Enabled= End Sub Private Sub Timer1_Timer() Static a% a=a+1 If P1.Top P2.Top+P2.? Then P1.Move P1.Left, P1.Top-5-a, P1.Width, P1.Height Else Timer1.?=False End I
10、f End Sub 参考代码: Private Sub C1_Click() Timer1.Enabled=True End Sub Private Sub Timer1_Timer() Static a% a=a+1 If P1.Top P2.Top+P2.Height Then P1.Move P1.Left, P1.Top-5-a, P1.Width, P1.Height Else Timer1.Enabled=False End If End Sub 第三步:调试并运行程序。 第四步:按题目要求存盘。 (2)在窗体上建立好控件后,先设置控件属性,再编写事件过程。 在文本框里显示的内容通
11、过文本框的 Text属性设置。 Value属性用来表示复选框后单选框的状态。对于单选框来说, Value属性可设置为 True或 False当设置为 True时,该单选按钮是被选中的,否则该单选按钮没有被选中。对于复选框来说, Value属性可以设置为 0、 1或 2。其中:0表示没有选中该复选框; 1表示选中该复选框; 2表示 该复选框被禁止 (灰色 )。解题步骤: 第一步:建立界面并设置控件属性。程序中用到的控件及其属性见表 20-4。 第二步:编写程序代码。 参考代码: 程序提供的代码: Private Sub Form_Unload(Cancel As Integer) Open “o
12、ut4.txt“ For Output As #1 Print #1, Op1.Value, Op2.Value, Text1.Text Print #1, Ch1.Value, Ch2.Value, Text2.Text Close #1 End Sub 参考代码: Private Sub C1_Click() If Op1.Value Then Text1.Text=“我是 “ & Op1.Caption Else Text1.Text=“我市 “ & Op2.Caption End If Text2.Text=“我的爱好是 “ If Ch1.Value=1 Then Text2.Text
13、=Text2.Text & Ch1.Caption End If If Ch2.Value=1 Then Text2.Text=Text2.Text & Ch2.Caption End If End Sub Private Sub Form Unload(Cancel As Integer) Open “out4.txt“ For Output As #1 Print #1, Op1.Value, Op2.Value, Text1.Text Print #1, Ch1.Value, Ch2.Value, Text2.Text Close #1 End Sub 第三步:调试并运行程序。 第四步:
14、按题目要求存盘。 三、综合应用题( 30分) 3 【正确答案】 在窗体上建 立好控件后,先设置控件属性,再编写事件过程。 在文本框里显示的内容通过 Text属性设置,其形式为: 文本框名 .Text=显示的内容 要使文本框内容显示为 “*”,需将 PasswordChar属性设置为 “*”。 程序中用到的MsgBox语句用法为: MsgBox提示 ,按钮 ,标题 在程序运行时控件是否可操作由 Enabled属性设置,当该属性为 True时控件可操作,为 False时不可操作。若3次都入错误,禁止再次输入,将文本框的 Enabled属性置为 False 即可。解题步骤: 第一步:建立界面并设置控
15、件属性 。程序中用到的控件及其属性值见表 19-6。 第二步:编写程序代码。 程序提供的代码: PriVate Sub C1_CliCk() If ? = “123456“ Then Text1.Text=“口令正确 “ TeXt1.?=“ Else Text2.Text=TeXt2.Text-1 If TeXt2.Text ? Then MsgBox“第 “& (3-Text2.Text) &“次口令错误,请重新输入 “ Else MsgBox“3次输入错误,请退出 “ Text1.Enabled=? End If End If End Sub 参考代码: Private Sub C1_Click() If Text1.Text=“123456“ Then Text1.Text=“口令正确 “ TeXt1.PasswordChar=“ Else Text2.Text=TeXt2.Text-1 If TeXt2.Text 0 Then MsgBox“第 “ & (3-Text2.Text) & “次口令错误,请重新输入 “ Else MsgBox“3次输入错误,请退出 “ Text1.Enabled=False End If End If End SUb 第三步:调试并运行程序。 第四步:按题目要求存盘。