1、VB 机试-试卷 27 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)在 Forml 的窗体上画一个名称为 Iabell 的标签,然后建立一个主菜单,标题为“命令”,名称为Com,该菜单有两个子菜单,其标题分别为“输出”和“关闭”,其名称分别为 Pri 和 Close。编写适当的事件过程,使程序运行后,如果单击“命令”菜单中的“输出”命令,则在标签中显示“模拟考试”;如果单击“关闭”命令,则结束程序运行。程序运行时,单击“输出”命令的效果如图 40-1 所示。 注意:存盘时必须存放在考生文件夹下,
2、工程文件名为 sjlvbp,窗体文件名为 sjlInn。 (2)在窗体上画一个列表框,名称为 Listl,通过“属性”窗口向列表框中添加 5 个项目,分别为“足球”、“篮球”、“排球”、“乒乓球”和“羽毛球”,单击列表框中的一项,则该项就从列表框中删除。程序的运行情况如图 40-2 和图 40-3 所示。 (分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在考生文件夹下有工程文件 sj3vbp 及窗体文件 sj3frm,该程序是不完整的。在窗口中有一个Text 文本框控件,名称为 Textl;一个 Label 标签;名称为 Labe
3、ll;一个命令按钮,名称为 Commandl;标题为“读入文件”。要求程序运行后,单击 Commandl 将 intxt 的内容显示到 Textl 中,并统计Textl 中有多少个字符,将结果显示在 Labell 中。程序运行时的窗体界面如图 313 所示。 注意:请在有“?”的地方填入正确内容,然后删除“?”及代码前的所有注释符(即“”号),但不能修改其他部分。存盘时不得改变文件名和文件夹。 (2)在考生文件夹下有一个工程文件 sj4vbp,相应的窗体文件名为sj4frm,求数组的中间值。程序运行后,单击“读入”按钮,通过输入对话框输入 5 个整数,然后单击“取中间值”命令按钮,即可求出数组
4、的中间值,并在名称为 Labell 的标签上显示出来,如图 314 所示。请把程序补充完整,并能正确运行。 (分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在考生文件夹下有一个工程文件 sj5vbp,窗体上有一个文本框,名称为 Textl,可以多行显示。还有三个命令按钮,名称分别为 Commandl、Command2 和 Command3,标题分别为“读取数据”、“显示并保存奇数”和“显示并保存偶数”。“读取数据”按钮的功能是把考生文件夹下的 in5dat 文件中的 50 个整数读到数组中,并在 Textl 中显示出来;“显示并保存奇数
5、”和“显示并保存偶数”按钮的功能是把 50个数按要求保存到考生文件夹下的 out51dat 和 out52dat 文件中。单击“读取数据”命令按钮后,程序运行时的窗体界面如图 525 所示。 (分数:2.00)_VB 机试-试卷 27 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)在 Forml 的窗体上画一个名称为 Iabell 的标签,然后建立一个主菜单,标题为“命令”,名称为Com,该菜单有两个子菜单,其标题分别为“输出”和“关闭”,其名称分别为 Pri 和 Close。编写适当的事件过
6、程,使程序运行后,如果单击“命令”菜单中的“输出”命令,则在标签中显示“模拟考试”;如果单击“关闭”命令,则结束程序运行。程序运行时,单击“输出”命令的效果如图 40-1 所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjlvbp,窗体文件名为 sjlInn。 (2)在窗体上画一个列表框,名称为 Listl,通过“属性”窗口向列表框中添加 5 个项目,分别为“足球”、“篮球”、“排球”、“乒乓球”和“羽毛球”,单击列表框中的一项,则该项就从列表框中删除。程序的运行情况如图 40-2 和图 40-3 所示。 (分数:2.00)_正确答案:(正确答案:(1)根据题意,新建“标准 EXE
7、”工程,将一个标签添加到窗体中,其名称设为Labell、Caption 属性为空,按“Ctrl+E”组台键打开菜单编辑器,在其中添加如下菜单项: 单击“确定”按钮,完成菜单设计,在对应事件窗口中编写如下代码: Private Sub Close_Click() 单击关闭命令的处理函数 Unload Me End Sub Private Sub Pri_Click() 单击输出命令的处理函数 LabellCaption=“模拟考试“ End Sub 单击 按钮运行程序,并按要求保存。 (2)本题考查用RemoveItem 方法删除列表框中指定的项目。其格式为:列表框RemoveItem 索引值。
8、RemoveItem 方法从列表框中删除以“索引值”为地址的项目,该方法每次只能删除一个项目。 Listlndex 属性是已被选中的表项的位置。如果没有选中任何项,ListIndex 的值将设置为-1。根据题意,新建“标准 EXE”工程,将一个 List 控件添加到窗体中,其名称为 Listl,在其 List 属性栏中输入元素,每输入一个后按“Ctrl+enter”组合键换行输入下一个元素,当输入完成后,按回车键。双击 List 进入代码编写窗口,编写如下代码: Private Sub Listl_Click() ListlRemovehem ListlListIndexremoveltem
9、的参数是索引号 End Sub 单击 )解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在考生文件夹下有工程文件 sj3vbp 及窗体文件 sj3frm,该程序是不完整的。在窗口中有一个Text 文本框控件,名称为 Textl;一个 Label 标签;名称为 Labell;一个命令按钮,名称为 Commandl;标题为“读入文件”。要求程序运行后,单击 Commandl 将 intxt 的内容显示到 Textl 中,并统计Textl 中有多少个字符,将结果显示在 Labell 中。程序运行时的窗体界面如图 313 所示。 注意:请在有“?
10、”的地方填入正确内容,然后删除“?”及代码前的所有注释符(即“”号),但不能修改其他部分。存盘时不得改变文件名和文件夹。 (2)在考生文件夹下有一个工程文件 sj4vbp,相应的窗体文件名为sj4frm,求数组的中间值。程序运行后,单击“读入”按钮,通过输入对话框输入 5 个整数,然后单击“取中间值”命令按钮,即可求出数组的中间值,并在名称为 Labell 的标签上显示出来,如图 314 所示。请把程序补充完整,并能正确运行。 (分数:2.00)_正确答案:(正确答案: (1)根据题意,将一个 Text 控件,一个 Label 控件和一个 Command 控件添加到窗体上,Text 的名称为
11、Textl、Text 属性为空、MultiLine 属性为 True、ScrollBar 属性为 2,Label 的名称为 Labell、Caption 属性为空,Command 的名称为 Commandl、Caption 属性为“读人文件”,设置完成后双击 Commandl 命令按钮,编写如下代码: Private Sub Commandl_Click() Dim str As String Dim tmp As String str=“ Open“AppPath&intxt“For Input As #1 打开文件准备读取 While EOF(1)=False 判断是否读到文件尾 Inpu
12、t#1,tmp读取字符串 str=str+tmp将读取的字符串放人输出字符串中 Wend Close#1关闭文件 Textl Text =str 在 Textl 中显示输出字符串 Labell Caption = Len (str) 将字符串长度在 Labell 中显示出来 End Sub 单击 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在考生文件夹下有一个工程文件 sj5vbp,窗体上有一个文本框,名称为 Textl,可以多行显示。还有三个命令按钮,名称分别为 Commandl、Command2 和 Command3,标题分别为“读取
13、数据”、“显示并保存奇数”和“显示并保存偶数”。“读取数据”按钮的功能是把考生文件夹下的 in5dat 文件中的 50 个整数读到数组中,并在 Textl 中显示出来;“显示并保存奇数”和“显示并保存偶数”按钮的功能是把 50个数按要求保存到考生文件夹下的 out51dat 和 out52dat 文件中。单击“读取数据”命令按钮后,程序运行时的窗体界面如图 525 所示。 (分数:2.00)_正确答案:(正确答案: 根据题意,将一个 Text 控件和 3 个 Command 控件添加到窗体上,Text 的名称为Textl,Text 属性为空、MuhiLIne 属性为 True,ScrollBa
14、r 属性为 2,Command 的名称分别为Commandl、Command2 和 Command3、Caption 属性分别为“读取数据”“显示并保存奇数”和“显示并保存偶数”。双击 Commandl 命令按钮,编写如下代码: Dim a(50)As Integer Private Sub Commandl_Click() Dim i As Integer Dim str As String str=“ Open“AppPath&in5dat“For Input As#l For i=1 To 50利用 For 循环将数据读取到数组中 Input#1,a(i) str=str+CStr(a(
15、i)+“ 将数组放到字符串中 Next i Close#1 Textl Text =str将结果显示在 Textl 上 End Sub Private Sub Command2 Click() Dim i As Integer Dim str As String str=“ For i=1 To 50 If a(i)Mod 2 = 1 Then str=str+CStr(a(i)+“ End If Next i TextlText=str Open“AppPath&out51dat“For Output As#1 Print#1,str Close#1 End Sub Private Sub Command3_Click() Dim i As Integer Dim str As String str=“ For i=1 To 50利用 For 循环遍历数组 If a(i)Mod 2= 0 Then如果是偶数 str=str+CStr(a(i)+“ 则加入到字符串中 End If Next i TextlText=str将得到的字符串显示在Textl 上 Open“AppPath&out52dat“For Output As#1打开文件准备写入 Print#1,str将结果写入文件中 Close#1 End Sub 单击 )解析: