1、二级 VISUAL+BASIC 机试-46 及答案解析(总分:100.00,做题时间:90 分钟)一、1 基本操作题(总题数:1,分数:30.00)1.注意:下面出现的“”均为 c:/wexam/25160001。请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码)。(1) 在名称为 Form1 的窗体上画两个标签(名称分别为 Label1 和 Label2,标题分别为“书名”和“作者”)、两个文本框(名称分别为 Text1 和 Text2,Text 属性均为空白)和一个命令按钮(名称为 Command1,标题为“显示”),如图 22-1 所示。然后编写命令按钮的
2、Click 事件过程。程序运行后,在两个文本框中分别输入书名和作者,然后单击命令按钮,则在窗体的标题栏上先后显示两个文本框中的内容,如图 22-2所示。要求程序中不得使用任何变量。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1.vbp,窗体文件名为 sjt1.frm。(2) 在名称为 Form1 的窗体上画一个垂直滚动条(名称为 VScroll1)和一个水平滚动条(名称为 HScroll1),如图 22-3 所示。在属性窗口中对两个滚动条设置如下属性:Min 1500Max 6000LargeChange 200SmallChange 50编写适当的事件过程。程序运行后,如果移动滚
3、动条上的滚动框,则可扩大或缩小窗体。运行后的窗体如图 22-4 所示。要求程序中不得使用任何变量。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。(分数:30.00)_二、2 简单应用题(总题数:1,分数:40.00)2.(分数:40.00)_三、3 综合应用题(总题数:1,分数:30.00)3. (分数:30.00)_二级 VISUAL+BASIC 机试-46 答案解析(总分:100.00,做题时间:90 分钟)一、1 基本操作题(总题数:1,分数:30.00)1.注意:下面出现的“”均为 c:/wexam/25160001。请根据以下各小
4、题的要求设计 Visual Basic 应用程序(包括界面和代码)。(1) 在名称为 Form1 的窗体上画两个标签(名称分别为 Label1 和 Label2,标题分别为“书名”和“作者”)、两个文本框(名称分别为 Text1 和 Text2,Text 属性均为空白)和一个命令按钮(名称为 Command1,标题为“显示”),如图 22-1 所示。然后编写命令按钮的 Click 事件过程。程序运行后,在两个文本框中分别输入书名和作者,然后单击命令按钮,则在窗体的标题栏上先后显示两个文本框中的内容,如图 22-2所示。要求程序中不得使用任何变量。注意:存盘时必须存放在考生文件夹下,工程文件名为
5、 sjt1.vbp,窗体文件名为 sjt1.frm。(2) 在名称为 Form1 的窗体上画一个垂直滚动条(名称为 VScroll1)和一个水平滚动条(名称为 HScroll1),如图 22-3 所示。在属性窗口中对两个滚动条设置如下属性:Min 1500Max 6000LargeChange 200SmallChange 50编写适当的事件过程。程序运行后,如果移动滚动条上的滚动框,则可扩大或缩小窗体。运行后的窗体如图 22-4 所示。要求程序中不得使用任何变量。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。(分数:30.00)_正确答案
6、:(解析:在窗体上建立好控件后,先设置控件属性,再编写事件过程。标签和命令按钮的标题各自的 Caption 属性来设置,文本框显示的内容由 Text 属性设置,窗体的标题由其 Caption 属性来设置。在 Visual Basic 中可以用“+”或“ AverEnd Sub参考代码:Option Base 1Private Function Average(a() As Integer) As SingleDim Start As Integer, Finish As IntegerDim i As IntegerDim Sum As IntegerStart=LBound(a)Finish
7、=UBound(a)Sum= 0For i=Start To FinishSum=Sum+a(i)Next iAverage=Sum/FinishEnd FunctionPrivate Sub Command1_Click()Dim arr1Dim arr2(4) As Integerarr1=Array(Val(Text1.Text) , Val(Text2.Text) , Val(Text3.Text) , Val(Text4.Text) )For i=1 To 4arr2(i)=CInt(arr1(i) )Next iAver=Average (arr2)Print “平均值是:“; A
8、verEnd Sub第三步:调试并运行程序。第四步:按题目要求存盘)解析:三、3 综合应用题(总题数:1,分数:30.00)3. (分数:30.00)_正确答案:(解析 在 Visual Basic 中,菜单项通过菜单编辑器来建立。程序中用到的 Mod 是取模的运算符,如:N Mod 3=0 则说明余数为 0,N 能被 3 整除,否则 N 不能被 3 整除。对文件的操作都有 3 个步骤:打开(Open)、读写、关闭(Close)。解题步骤:第一步:建立菜单项、建立界面并设置控件属性。程序中用到的菜单项及其控件属性见表 22-5。表 22-5标 题 名 称 内 缩 符 号读入数据 Read 0计
9、算并输出 Calc 0存盘 Save 0ext Name Text1第二步:编写程序代码。程序提供的代码:Option Base 1Dim Arr(100) As IntegerDim temp As IntegerSub ReadData()Open App.Path & “/“ & “datain1.txt“ For Input As #1For i=1 To 100Input #1, Arr(i)Next iClose #1End SubSub WriteData(Filename As String, Num As Integer)Open App.Path & “/“ & Filen
10、ame For Output As #1Print #1, Num?#1End SubPrivate Sub Calc_Click()Text1.?=“For i=1 To 100If Arr(i) Mod 3=0 ThenText1.Text=Text1.Text & Arr(i) & Space(5)temp=temp+9End IfNext iPrint tempEnd SubPrivate Sub Read_Click()ReadDataEnd SubPrivate Sub Save_Click()WriteData “dataout.txt“, tempEnd Sub参考代码:Opt
11、ion Base 1Dim Arr(100) As IntegerDim temp As IntegerSub ReadData()Open App.Path & “/“ & “datain1.txt“ For Input As #1For i=1 To 100Input #1, Arr(i)Next iClose #1End SubSub WriteData(Filename As String, Num As Integer)Open App.Path & “/“ & Filename For Output As #1Print #1, NumClose #1End SubPrivate Sub Calc_Click()Text1.Text=“For i=1 To 100If Art(i) Mod 3=0 ThenText1.Text=Text1.Text & Arr(i) & Space(5)temp=temp+Arr(i)End IfNext iPrint tempEnd SubPrivate Sub Read_Click()ReadDataEnd SubPrivate Sub Save_Click()WriteData “dataout.txt“, tempEnd Sub第三步:调试并运行程序。第四步:按题目要求存盘。)解析: