1、VB 机试-试卷 54 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.在 Form1 窗体上绘制一个名称为 Textl 的文本框,然后建立一个主菜单,标题为“操作”,名称为Op,该菜单有两个子菜单,其标题分别为“显示”和“隐藏”,名称分别为 Dis 和 Hid,编写适当的事件过程。程序运行后,如果单击“操作”菜单中的“显示”命令,则在文本框中显示“计算机考试”;如果单击“隐藏”命令,则隐藏文本框。程序的运行情况如图 471 和图 472 所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为 sjlf
2、rm,工程文件名为 sjlvbp。 (2)在名为 Forml 的窗体上绘制一个标签,名为 Labl,标题为“请输入一个摄氏温度”;绘制两个文本框,名称分别为 Textl 和Text2,内容设为空;再绘制一个名为 Cmdl 的命令按钮,其标题为“华氏温度等于”。编写适当的程序,使得单击“华氏温度等于”按钮时,将 Textl 中输人的摄氏温度(c)转换成为华氏温度(f),转换公式为:f=c*95+32,并显示在 Text2 中。程序运行结果如图 473 所示。 (分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在考生文件夹下有工程文件
3、sj3vbp 与窗体文件 sj3frm,该程序和窗体是不完整的。请在窗体上设置一个标签,名称为 Labell,标题为“计算 12-13+14-15+16 的值”;另设一个文本框与一个命令按钮。命令按钮的名称为 Commandl、标题为“计算”;文本框的名称为 Textl,用于显示结果,并初始化为空。然后编写相应的代码,要求运行程序时,单击“计算”按钮,程序可以计算出 12-13+14-15+16 的值,并将结果显示在文本框中,如图 263 所示。 注意:考生完成程序编写后,将工程文件与窗体文件按原文件名保存到考生文件夹下,不得更改程序的其他部分,否则可能无成绩。 (2)新建一个工程文件,在名称
4、为 Forml 的窗体上建立两个名称分别为 Commandl 和 Command2、标题分别为“平均分”和“清空”的命令按钮;一个名为 Textl 的文本框。要求程序运行后,单击“平均分”按钮,可通过输入对话框输入 7 个整数,去掉最大的和最小的然后求平均分,将结:果在文本框中显示出来。如果单击“清空”按钮,则将文本框清空。在程序中不得使用任何其他变量。程序运行时的窗体界面如图264 所示。 (分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在窗体上绘制两个命令按钮,名称分别为 Commandl 和 Command2,标题分别为“输人”和
5、“调换”,两个标签,名称为 Labell 和 Label2、Caption 属性为“调换前:”和“调换后:”,两个名称分别为Text1 和 Text2 的文本框控件。请编写适当的事件过程,从键盘上输人 10 个整数,并放人一个一维数组中,然后将其前 5 个元素与后 5 个元素对换,即第一个元素与第 10 个元素互换,第 2 个元素与第 9 个元素互换第 5 个元素与第 6 个元素互换。使得在运行时单击“调换”按钮,则分别在 Textl 和 Text2 中输出数组原来的各元素的值和对换后各元素的值,如图 235 所示。 (分数:2.00)_VB 机试-试卷 54 答案解析(总分:12.00,做题
6、时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.在 Form1 窗体上绘制一个名称为 Textl 的文本框,然后建立一个主菜单,标题为“操作”,名称为Op,该菜单有两个子菜单,其标题分别为“显示”和“隐藏”,名称分别为 Dis 和 Hid,编写适当的事件过程。程序运行后,如果单击“操作”菜单中的“显示”命令,则在文本框中显示“计算机考试”;如果单击“隐藏”命令,则隐藏文本框。程序的运行情况如图 471 和图 472 所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为 sjlfrm,工程文件名为 sjlvbp。 (2)在名为 F
7、orml 的窗体上绘制一个标签,名为 Labl,标题为“请输入一个摄氏温度”;绘制两个文本框,名称分别为 Textl 和Text2,内容设为空;再绘制一个名为 Cmdl 的命令按钮,其标题为“华氏温度等于”。编写适当的程序,使得单击“华氏温度等于”按钮时,将 Textl 中输人的摄氏温度(c)转换成为华氏温度(f),转换公式为:f=c*95+32,并显示在 Text2 中。程序运行结果如图 473 所示。 (分数:2.00)_正确答案:(正确答案:(1)本题主要考查菜单的使用。菜单在“菜单编辑器”中创建;在程序运行时控件是否可见由该控件的 Visible 属性决定,如果将该属性设置为 True
8、 时,则对象可见;如果设置为False,则隐藏该控件。 建立界面并设置控件属性。程序中用到的控件及其属性见下表: )解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在考生文件夹下有工程文件 sj3vbp 与窗体文件 sj3frm,该程序和窗体是不完整的。请在窗体上设置一个标签,名称为 Labell,标题为“计算 12-13+14-15+16 的值”;另设一个文本框与一个命令按钮。命令按钮的名称为 Commandl、标题为“计算”;文本框的名称为 Textl,用于显示结果,并初始化为空。然后编写相应的代码,要求运行程序时,单击“计算”按钮,
9、程序可以计算出 12-13+14-15+16 的值,并将结果显示在文本框中,如图 263 所示。 注意:考生完成程序编写后,将工程文件与窗体文件按原文件名保存到考生文件夹下,不得更改程序的其他部分,否则可能无成绩。 (2)新建一个工程文件,在名称为 Forml 的窗体上建立两个名称分别为 Commandl 和 Command2、标题分别为“平均分”和“清空”的命令按钮;一个名为 Textl 的文本框。要求程序运行后,单击“平均分”按钮,可通过输入对话框输入 7 个整数,去掉最大的和最小的然后求平均分,将结:果在文本框中显示出来。如果单击“清空”按钮,则将文本框清空。在程序中不得使用任何其他变量
10、。程序运行时的窗体界面如图264 所示。 (分数:2.00)_正确答案:(正确答案:(1)根据题意,将一个 Label 控件,一个 Text 控件和一个 Command 控件添加到窗体上,Label 的 Caption 属性为“计算 12-13+14-15+16 的值”,Text 的名称分别为Textl,Text 属性为空,Command 的名称为 Commandl,Caption 属性为“计算”。双击 Commandl 命令按钮,编写如下代码: Private Sub Commandl_Click() Dim total AS Double Dim n As Integer Dim a As
11、 Integer total=0 a=-1 For i=1 To 5 a=a*(-1) total=total+a(i+1) Next i TextlText=total Open“AppPath&out3txt“For Output As#1 Pnt#1,TextlText Close 1 End Sub 单击 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在窗体上绘制两个命令按钮,名称分别为 Commandl 和 Command2,标题分别为“输人”和“调换”,两个标签,名称为 Labell 和 Label2、Caption 属性为“调
12、换前:”和“调换后:”,两个名称分别为Text1 和 Text2 的文本框控件。请编写适当的事件过程,从键盘上输人 10 个整数,并放人一个一维数组中,然后将其前 5 个元素与后 5 个元素对换,即第一个元素与第 10 个元素互换,第 2 个元素与第 9 个元素互换第 5 个元素与第 6 个元素互换。使得在运行时单击“调换”按钮,则分别在 Textl 和 Text2 中输出数组原来的各元素的值和对换后各元素的值,如图 235 所示。 (分数:2.00)_正确答案:(正确答案: 要对数据进行对调,也就是数据交换,一般要借助中间变量,如本题的 tmp。本题首先通过 InputBox 函数输入 10
13、 个数,然后通过 For 循环,每次循环调换一组数。补充后的代码如下: Dim a(10)As Integer Private Sub Commandl Click() Dim i As Integer Dim str As String str=“ For i=1 To 10 a(i)=Val( InputBox (“请输入数字“) 通过对话框输入 10 个数,并放人数字中 str=str+CStr(a(i)+“ 将数组放入字符串中保存 Next i TextlText=str在 Textl 中显示结果 End Sub Private Sub Command2 Click() Dim tmp As Integer Dim i As Integer Dim str As String str=“ For 1=1 To 5 tmp=a(i) 进行对调,先将 a(i)的数据放人 tmp 中 a(i) =a(10-i+1) 将 a(10-i)的数据放人 a(i)中 a(10-i+1)= tmp 将 tmp 的数据放人 a(10-i)中 Next i For i=1 To 10 str=str+CStr(a(i)+“ Next i Text2Text=str将结果在 Text2 中显示出来 End Sub 单击 )解析: