1、VB 机试-试卷 8 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码)。 (1)在 Forml 的窗体上画一个名称为 Picl 的图片框,然后建立一个主菜单,标题为“命令”,名称为 Com,该菜单有两个子菜单,其标题分别为“输出”和“删除”,名称分别为 Pri 和 Del,编写适当的事件过程。程序运行后,如果单击“命令”菜单中的“输出”命令,则将图片框显示出来;如果单击“删除”命令,则隐藏图片框。程序的运行时的窗体界面如图 1
2、11 和图 112 所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjlvbp,窗体文件名为 sjlfrm。程序中不得使用任何变量。 (2)在窗体上画一个列表框,名称为 Listl,通过“属性”窗口向列表框中添加 3 个项目,分别为“足球篮球”和“排球”。编写适当的事件过程,使程序运行后,每次单击列表框中的任何一项,则总在最后面添加一项“体育活动”。程序运行界面和运行效果分别如图 113 和图 114 所示。 (分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在窗体上画两个单选按钮,名称分别为 Op1 和 Op2,标题分
3、别为“黑体”和“楷体”;一个文本框,名称为 Textl,字体为宋体,字号为四号字;有一个命令按钮,名称为 C1,标题为“切换”。要求程序运行后,在文本框中输入“等级考试”,并选择一个单选按钮,如图 554 所示。在单击“切换”按钮后,会根据所选的单选按钮来切换文本框中所显示的汉字字体,如图 555 所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为 sj3frm,工程文件名为 sj3vbp。 (2)在考生文件夹中有一个工程文件 sj4vbp,相应的窗体文件名为 sj4frm。请在名为 Forml 的窗体上绘制一个名称为 Textl 的文本框和一个名称为 Cmdl、标题为“大小写转换”的命
4、令按钮,如图 556,557 所示。 (分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在名称为 Forml 的窗体上有一个 Label 控件和两个命令按钮,数据文件 personldat 存放员工的编号、姓名、工资。自定义一个数据类型 person,字符型数据定长为 12;按“开始”按钮后,从考生文件夹下的 personldat 中读出所有数据并写人考生文件夹下的 persondat 文件中;执行完毕,“开始”按钮变成“完成”,且无效(变灰),如图 396 所示。 (分数:2.00)_VB 机试-试卷 8 答案解析(总分:12.00,做
5、题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码)。 (1)在 Forml 的窗体上画一个名称为 Picl 的图片框,然后建立一个主菜单,标题为“命令”,名称为 Com,该菜单有两个子菜单,其标题分别为“输出”和“删除”,名称分别为 Pri 和 Del,编写适当的事件过程。程序运行后,如果单击“命令”菜单中的“输出”命令,则将图片框显示出来;如果单击“删除”命令,则隐藏图片框。程序的运行时的窗体界面如图 111 和图 112 所示。 注意:存盘时必须存放
6、在考生文件夹下,工程文件名为 sjlvbp,窗体文件名为 sjlfrm。程序中不得使用任何变量。 (2)在窗体上画一个列表框,名称为 Listl,通过“属性”窗口向列表框中添加 3 个项目,分别为“足球篮球”和“排球”。编写适当的事件过程,使程序运行后,每次单击列表框中的任何一项,则总在最后面添加一项“体育活动”。程序运行界面和运行效果分别如图 113 和图 114 所示。 (分数:2.00)_正确答案:(正确答案: (1)根据题意,新建“标准 EXE”工程将一个图片控件添加到窗体中,其名称设为 Picl,按“Ctrl+E”组合键打开菜单编辑器,在其中添加如下菜单项: 设置完成后双击输出命令进
7、入代码窗口,编写如下代码: Private Sub Del_Click() 单击删除命令事件 PiclVisible=False End Sub Private Sub Pri_Click()单击输出命令事件 PiclVisible=True End Sub 单击 按钮运行程序,并按要求保存。 (2)根据题意,新建“标准 EXE”工程,将一个 List 控件添加到窗体中,其名称为 Listl。在其 List 属性中按题目要求输入项目,每输完一个后按“Ctrl+Enter”组合键换行,输入下一个元素,最后按回车键结束输入,双击 List,进入代码编写窗口 编写如下代码: Private Sub
8、Listl_Click() ListlAddltem“体育活动“ 添加选项 End Sub 单击 )解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在窗体上画两个单选按钮,名称分别为 Op1 和 Op2,标题分别为“黑体”和“楷体”;一个文本框,名称为 Textl,字体为宋体,字号为四号字;有一个命令按钮,名称为 C1,标题为“切换”。要求程序运行后,在文本框中输入“等级考试”,并选择一个单选按钮,如图 554 所示。在单击“切换”按钮后,会根据所选的单选按钮来切换文本框中所显示的汉字字体,如图 555 所示。 注意:保存时必须存放在考生
9、文件夹下,窗体文件名为 sj3frm,工程文件名为 sj3vbp。 (2)在考生文件夹中有一个工程文件 sj4vbp,相应的窗体文件名为 sj4frm。请在名为 Forml 的窗体上绘制一个名称为 Textl 的文本框和一个名称为 Cmdl、标题为“大小写转换”的命令按钮,如图 556,557 所示。 (分数:2.00)_正确答案:(正确答案:(1)本题主要考查单选按钮和文本框的综合应用。单选按钮和切换按钮是通过它们的 Caption 属性来设置的,当单击“切换”时触发它的 Click 事件来使文本框的内容改变。文本框的字体设置通过它的 Font 属性来实现。窗体的控件及其属性已经建好,只需编
10、写事件过程空缺的代码即可。 程序中用到的控件及其属性见下表: )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在名称为 Forml 的窗体上有一个 Label 控件和两个命令按钮,数据文件 personldat 存放员工的编号、姓名、工资。自定义一个数据类型 person,字符型数据定长为 12;按“开始”按钮后,从考生文件夹下的 personldat 中读出所有数据并写人考生文件夹下的 persondat 文件中;执行完毕,“开始”按钮变成“完成”,且无效(变灰),如图 396 所示。 (分数:2.00)_正确答案:(正确答案:本题要利用
11、EOF()函数判断是否到文件末尾。根据题意,将一个标签控件和两个命令按钮添加到窗体中,标签控件的 Caption 属性为“从源文件personldat 中读人数据,保存到目标文件persondat 中”,命令按钮的名称分别为 Commandl 和 Command2,Caption 分别为“开始”和“保存”,设置完成后双击 Cornmandl 进入代码编写窗口,具体代码如下: Private Type person结构体声明 n As Integer nam As String *12 “ham 为 12 个字符 salary As Integer End Type Dim per()As pe
12、rson Dim hum As Integer Private Sub Commandl_Click() Dim trap As person Dim i num=0 Open“AppPathg&personldat“For Input As #1 打开文件准备读人 While EOF(1)=FalseEOF 判断是否读到最后 Input#1,trapn,trapnam,tmpsalary读取结构体的各个元素 num=num+l 计数加1 Wend Close#1 ReDim per(num)As person重新声明结构体 Open“AppPath&personldat”For Input
13、As#1 打开文件准备读入 For i=1To num 循环读取 Input#1,per(i)n,per(i)nam,per(i)salary向数组中读取数据 Next i Close#1 Commandl Enabled =FalseCommandl 不可用 Commandl Caption =“完成“ Commandl 标示改为完成 End Sub Private Sub Command2_Click() Dim i As Integer Open”AppPathg& persondat “For Append As#1 打开文件准备写入 For i=1 To num循环写入 Print#l,per(i)n,per(i)nam,per(i)salary写入数据 Next i Close#1 End Sub 单击 )解析: