1、二级 VISUAL+BASIC 机试-25 及答案解析(总分:100.00,做题时间:90 分钟)一、1 基本操作题(总题数:1,分数:30.00)1.在 Form1 的窗体上建立一个二级下拉菜单。第一级共有二个菜单项,名称分别为 Operation、Help,标题分别为“操作”、“帮助”;在“操作”菜单下有第二级菜单,含有两个菜单项,名称分别为Msg、MyExit,标题分别为“显示消息”、“退出”(如图 11 所示)。程序运行后,单击“显示消息”菜单时,弹出一个消息框,其中的消息为“计算机等级考试”(如图 12 所示);单击“退出”则结束应用程序。注意:存盘时必须存放在考生文件夹下,工程文件
2、名为 sjt1.vbp,窗体文件名为 sjt1.frm。2在窗体上画两个单选按钮(名称分别为 Op1 和 Op2,标题分别为“本科生”和“研究生”)和一个文本框(名称为 T1),然后编写适当的代码。程序运行后,如果选择“本科生”单选按钮,则在文本框中显示“我是本科生”;如果选择“研究生”单选按钮,则在文本框中显示“我是研究生”。程序的运行情况如图 13 和图 14 所示。存盘时,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。(分数:30.00)_二、2 简单应用题(总题数:1,分数:40.00)2.请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码
3、)。1在考生文件夹下打开工程 sjt3.vbp,在窗体 Form1 上建立一个名称为 Text1 的文本框和一个名称为Command1,标题为“计算”的命令按钮(如图 21 所示)。程序运行后,单击“计算”命令按钮,通过在对话框输入整数 10,放入整形变量 a 中,然后计算 a!,(提示:运算结果应放入 Long 型变量中),在文本框中显示结果,并把结果存入文件 out3.txt 中。在考生文件夹中有一个标准模块 mode.bas,该模块中提供了保存文件的过程 putdata,考生可以直接调用。注意:保存时必须存放在考生文件夹下,窗体文件名为 sjt3.frm,工程文件名为 sjt3.vbp。
4、2在名称为 Form1 的窗体上画一个驱动器列表框,其名称为 Driver1,再画一个目录列表框,其名称为Dir1;然后添加一个文件列表框,名称为 File1。请设置适当的控件属性和编写适当的事件过程,使得在运行时,实现驱动器列表框、目录列表框和文件列表框的同步操作,且在列表框中只显示后缀名为 exe 的文件;如果双击文件列表框中的文件,则执行该文件(如图 22 所示)。程序中不得使用任何变量。已知;可以用 Shell 函数来运行可执行文件。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt4.vbp,窗体文件名为 sjt4.frm。(分数:40.00)_三、3 综合应用题(总题数:1,
5、分数:30.00)3.在考生文件夹下有一个工程文件 sjt5.vbp,在该过程中为考生提供了一个通用过程,考生可以直接调用。请在窗体上画一个名称为 Text1 的文本框;画一个名称为 C1,标题为“计算”的命令按钮;再画两个单选按钮,名称分别为 Op1、Op2,标题分别为“求 500 到 600 之间能被 7 整除的数之和”、“求 500到 600 之间能被 3 整除的数之和”(如图 31 所示)。请编写适当的事件过程,使得在运行时,选中一个单选按钮,再单击“计算”按钮,就可以按照单选按钮后的文字要求计算,并把计算结果放入文本框中,最后把已经修改的工程文件和窗体文件以原来的文件名存盘。(分数:
6、30.00)_二级 VISUAL+BASIC 机试-25 答案解析(总分:100.00,做题时间:90 分钟)一、1 基本操作题(总题数:1,分数:30.00)1.在 Form1 的窗体上建立一个二级下拉菜单。第一级共有二个菜单项,名称分别为 Operation、Help,标题分别为“操作”、“帮助”;在“操作”菜单下有第二级菜单,含有两个菜单项,名称分别为Msg、MyExit,标题分别为“显示消息”、“退出”(如图 11 所示)。程序运行后,单击“显示消息”菜单时,弹出一个消息框,其中的消息为“计算机等级考试”(如图 12 所示);单击“退出”则结束应用程序。注意:存盘时必须存放在考生文件夹
7、下,工程文件名为 sjt1.vbp,窗体文件名为 sjt1.frm。2在窗体上画两个单选按钮(名称分别为 Op1 和 Op2,标题分别为“本科生”和“研究生”)和一个文本框(名称为 T1),然后编写适当的代码。程序运行后,如果选择“本科生”单选按钮,则在文本框中显示“我是本科生”;如果选择“研究生”单选按钮,则在文本框中显示“我是研究生”。程序的运行情况如图 13 和图 14 所示。存盘时,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。(分数:30.00)_正确答案:( 建立界面和设置对象属性。程序用到的控件及其属性如下表 l 所示。表 1控 件 属 性 设 置 值菜单 名称
8、标题 Operation“操作”菜单 名称标题 Help“帮助”菜单名称标题内缩符号Msg“显示消息”1菜单名称标题内缩符号MyExit“退出”1 编写程序代码Private Sub Msg_Click()MsgBox“计算机等级考试“End SubPrivate Sub MyExit_Click()EndEnd Sub 按题目要求存盘。2 启动 Visual Basic,在窗体上画一个文本框和两个单选按钮。 在属性窗口中设置 3 个控件的属性值,见表 2。表 2控件 属性 设置值文本框 名称 T1单选按钮 名称Caption Op1本科生单选按钮 名称Caption Op2研究生 编写第 1
9、 个单选按钮的 Click 事件过程:Private Sub Op1_Click()Text1.Text“我是本科生“End Sub 编写第 2 个单选按钮的 Click 事件过程:Private Sub Op2_Click()Text1.Text“我是研究生“End Sub)解析:二、2 简单应用题(总题数:1,分数:40.00)2.请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码)。1在考生文件夹下打开工程 sjt3.vbp,在窗体 Form1 上建立一个名称为 Text1 的文本框和一个名称为Command1,标题为“计算”的命令按钮(如图 21 所示)。程
10、序运行后,单击“计算”命令按钮,通过在对话框输入整数 10,放入整形变量 a 中,然后计算 a!,(提示:运算结果应放入 Long 型变量中),在文本框中显示结果,并把结果存入文件 out3.txt 中。在考生文件夹中有一个标准模块 mode.bas,该模块中提供了保存文件的过程 putdata,考生可以直接调用。注意:保存时必须存放在考生文件夹下,窗体文件名为 sjt3.frm,工程文件名为 sjt3.vbp。2在名称为 Form1 的窗体上画一个驱动器列表框,其名称为 Driver1,再画一个目录列表框,其名称为Dir1;然后添加一个文件列表框,名称为 File1。请设置适当的控件属性和编
11、写适当的事件过程,使得在运行时,实现驱动器列表框、目录列表框和文件列表框的同步操作,且在列表框中只显示后缀名为 exe 的文件;如果双击文件列表框中的文件,则执行该文件(如图 22 所示)。程序中不得使用任何变量。已知;可以用 Shell 函数来运行可执行文件。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt4.vbp,窗体文件名为 sjt4.frm。(分数:40.00)_正确答案:( 首先将模块文件 mode.bas 添加到工程中,模块中包含的过程如下:Sub putdata(t_filename As String,t_str As Variant)Dim stile As Str
12、ingsfile“.“& t filenameOpen App. Path & sfile For Output As #1Print #1,t_strClose #1End Sub 编写命令按钮的事件过程:Private Sub Command1_Click()Dim n,i As IntegerDim j As Longn=InputBox(“请输入要计算的数字“)j=1For i1 To njj*iNext iText1.Textjputdata “out3.txt“,jEnd Sub 运行程序,在 inputbox 对话框中输入数字“10”。 按试题要求保存窗体文件和工程文件。2 建立
13、界面和设置控件属性。程序用到的控件及其属性如下表 3 所示。表 3控件 属性 设置值驱动器列表框 Name Drive1目录列表框 Name Dir1文件列表框 NamePattern File1“*.exe“ 编写程序代码。参考代码:Private Sub Dir1_Change()File1.Path=Dir1.PathEnd SubPrivate Sub Drive1_Change()Dir1.Path=Driver1.DriveEnd SubPrivate Sub File1_DblClick()xShell(Filel.FileName,1)End Sub 按题目要求存盘。)解析:三
14、、3 综合应用题(总题数:1,分数:30.00)3.在考生文件夹下有一个工程文件 sjt5.vbp,在该过程中为考生提供了一个通用过程,考生可以直接调用。请在窗体上画一个名称为 Text1 的文本框;画一个名称为 C1,标题为“计算”的命令按钮;再画两个单选按钮,名称分别为 Op1、Op2,标题分别为“求 500 到 600 之间能被 7 整除的数之和”、“求 500到 600 之间能被 3 整除的数之和”(如图 31 所示)。请编写适当的事件过程,使得在运行时,选中一个单选按钮,再单击“计算”按钮,就可以按照单选按钮后的文字要求计算,并把计算结果放入文本框中,最后把已经修改的工程文件和窗体文
15、件以原来的文件名存盘。(分数:30.00)_正确答案:( 建立界面和设置控件属性。题目提供了程序用到的控件,修改后的控件及其属性如下表 4 所示。表 4控 件 属 性 设 置 值文本框 NameText Text1空白命令按钮 NameCaption C1“计算”单选按钮 NameCaptionOp1“求 500 到600 之间能被7 整除的数之和”单选按钮 NameCaptionOp2“求 500 到600 之间能被3 整除的数之和” 编写程序代码。题目提供给考生的代码:Private Function fun(a As Integer)AsIntegers%=0For i%500 To 6
16、00If Int (i%/a)i%/a Thens%s%+i%End IfNextfun=s%End FunctionPrivate Sub Form_Unload(Cancel As Integer)Open “out5.txt“For Output As #1Print #1,Op1. Value,Op2. Value,Text1. TextClose #1End Sub参考代码:Private Sub C1_Click()If Op 1. Value ThenText1. Textfun(7)ElseIf Op2.Value ThenText1.Textfun(3)End IfEnd Sub 按题目要求存盘并进行相应的操作。)解析: