1、VB 机试-试卷 3 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)在窗体上绘制一个名称为 Textl 的文本框,然后建立一个主菜单,标题为“操作”,名称为 Op。该菜单有两个子菜单,其标题分别为“显示和“退出”,其名称分别为 Dis 和 Exit,编写适当的事件过程。程序运行后,如果单击“操作”菜单中的“显示命令,则在文本框中显示“计算机考试”;如果单击“退出”命令,则程序结束。程序的运行情况如图 41 所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为 sj1frm,工程文件名为 sj1
2、vbp。 (2)在名为 Form1 的窗体上绘制一个名为 Cmd1、标题为“显示”的命令按钮。编写适当的事件过程,使程序运行后,若单击“显示”命令按钮,则在窗体上显示“计算机等级考试 Visual Basic 课程”。程序运行情况如图 42 所示。 (分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在考生文件夹下有一个工程文件 sj3vbp,相应的窗体文件为 sj3frm。其功能是产生 40 个0800 的随机整数,放入一个数组中,然后输出其中的最小值。程序运行后,单击名称为 Commandl 的命令按钮,标题为“输出最小值”,即可
3、求出其最小值,并在 Textl 文本框中显示出来,如图 334 所示。这个程序不完整,请把它补充完整,并能正确运行。 注意:去掉程序中的注释符“”,把程序中的“?”改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。 (2)在考生文件夹下有一个工程文件 sj4vbp,相应的窗体文件为 sj4frm,在窗体上有一个命令按钮和一个文本框。程序运行后,单击命令按钮,即可计算出 100800 范围内能被 3 整除和能被5 整除的整数的个数,并在文本框中显示出来,如图 335 所示。在窗体的代码窗口中,已给出了部分程序。 (分数:2.00)_三、综合应用题(总
4、题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在考生文件夹下有工程文件 sj5vbp 及窗体文件 sj5frm。在名为 Forml 的窗体上有 5 个 Label 控件和 2 个命令按钮,数据文件 inl3dat 存放学生的编号、姓名、性别和体重,如图 135 所示。(分数:2.00)_VB 机试-试卷 3 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)在窗体上绘制一个名称为 Textl 的文本框,然后建立一个主菜单,标题为“操作”,名称为 Op。该菜单有两个子菜单,其标
5、题分别为“显示和“退出”,其名称分别为 Dis 和 Exit,编写适当的事件过程。程序运行后,如果单击“操作”菜单中的“显示命令,则在文本框中显示“计算机考试”;如果单击“退出”命令,则程序结束。程序的运行情况如图 41 所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为 sj1frm,工程文件名为 sj1vbp。 (2)在名为 Form1 的窗体上绘制一个名为 Cmd1、标题为“显示”的命令按钮。编写适当的事件过程,使程序运行后,若单击“显示”命令按钮,则在窗体上显示“计算机等级考试 Visual Basic 课程”。程序运行情况如图 42 所示。 (分数:2.00)_正确答案:(正确
6、答案:(1)本题主要考查菜单的使用。在 Visual Basic 中,菜单也被看作控件,具有属性和事件,菜单在“菜单逻辑器”对话框中建立。通过 End 语句结束程序的运行。 建立界面并设置控件属性。菜单及控件属性设置见下表: )解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在考生文件夹下有一个工程文件 sj3vbp,相应的窗体文件为 sj3frm。其功能是产生 40 个0800 的随机整数,放入一个数组中,然后输出其中的最小值。程序运行后,单击名称为 Commandl 的命令按钮,标题为“输出最小值”,即可求出其最小值,并在 Textl
7、 文本框中显示出来,如图 334 所示。这个程序不完整,请把它补充完整,并能正确运行。 注意:去掉程序中的注释符“”,把程序中的“?”改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。 (2)在考生文件夹下有一个工程文件 sj4vbp,相应的窗体文件为 sj4frm,在窗体上有一个命令按钮和一个文本框。程序运行后,单击命令按钮,即可计算出 100800 范围内能被 3 整除和能被5 整除的整数的个数,并在文本框中显示出来,如图 335 所示。在窗体的代码窗口中,已给出了部分程序。 (分数:2.00)_正确答案:(正确答案:(1)在数组求最小值中,定
8、义一个变量,用来存放数组中的最小值,在数组比较开始前,对变量进行赋初始值。在比较中,使用循环让变量和数组中的每个元素进行逐个比较,每次比较后变量中保存两个数中最小的数,循环结束后,变量中存放的数即为最小值。 由于要产生随机数,所以要调用 Rnd()函数,Rnd 函数返回小于 1,但大于或等于 0 的值,其语法格式为:Rnd(number)。number 参数是可选的,是 Single 或任何有效的数值表达式。number 的值决定了 Rnd 函数生成随机数的方式。为了生成某个范围内的随机整数,可使用公式:Int(upperbound-lowerbound+1)*Rnd+lowerbound)。
9、这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。具体代码如下: Private Sub Commandl_Click() Dim a(40)As Long Dim i As Integer Dim tmp As Integer For i=1 To 40 a(i)= Rnd() *(8000) 产生 0800 的随机数,放人数组中 Next i tmp=a(1) For i=2 To 40 If tmp a(i) Then tmp=a(i) 获得最小值 End If Next i TextlText=tmp在 Textl 中显示最小值 End S
10、ub 单击 按钮运行程序,并按要求保存。 (2)本题使用 Mod 运算符来判断一个数是否可以被另一个数整除,如果计算结果为 0,则表示可以整除,否则不能整除。具体代码如下: Private Sub Commandl_Click() Dim i As Integer Dim num As Integer num=0 For i=100 To 800for 循环从 100 到 800 If i Mod 3=0 And i Mod 5=0 Then num=num+1 如果能同时被 3 和 5 整除,计数加 1 End If Next i TextlText=num在 Textl 中输出个数 End
11、 Sub 单击 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在考生文件夹下有工程文件 sj5vbp 及窗体文件 sj5frm。在名为 Forml 的窗体上有 5 个 Label 控件和 2 个命令按钮,数据文件 inl3dat 存放学生的编号、姓名、性别和体重,如图 135 所示。(分数:2.00)_正确答案:(正确答案:根据题目 1打开题目所给工程文件。 2打开代码窗口输入如下代码: Private Sub Cmdl Click() Dim i As Integer Dim total As Integer Dim aver As Si
12、ngle Dim num(10),namstring(10),sexstring(10),wages(10) MyFile=AppPath&“&“inl3dat“ MyFile2=AppPath&“&“outl3dat“ Open MyFilel For Input As#1 Open MyFile2 For Output As#2 For i=1 To 10 Input#l,num(i),namstring(i),sexstring(i),wages(i) total=total+wages(i) Next i aver=total10 For i=1 To 10 If wages(i)aver Then Write#2,num(i),namstring(i),sexstring(i), wages(i) Next i CmdlCaption=“完成“ Cmd1Enabled=False End Sub 3按要求保存文件即完成本题。)解析: