步骤1:打开考生文件夹下的本题工程文件sjt3.vbp。 步骤2:在窗体Form1中加入两个框架和一个文本框,然后在每个框架中各加入两个单选按钮,分别设置它们的相关属性,其属性及值如表2所示。
表2
步骤3:打开代码编辑窗口输入如下代码: 参考代码:
Private Sub Text1_Click() If Op1 And Op3 Then
Text1.Text = \坐汽车去青岛\ ElseIf Op1 And Op4 Then
Text1.Text = \坐汽车去大连\ ElseIf Op2 And Op3 Then
Text1.Text = \坐轮船去青岛\ ElseIf Op2 And Op4 Then
Text1.Text = \坐轮船去大连\ End If End Sub
步骤4:按要求将文件保存至考生文件夹中。
步骤5:按
【考试误区】某容器中的单选按钮组只能有一个被选中。
第2小题
【审题分析】根据题目要求,设计本题程序的思路:在窗体的Click事件过程中分别以Op1和Op2是否选中作为If语句的条件,当Op1被选中时,将两个文本框中的内容通过一个中间变量进行交换;当Op2被选中时,将两个文本框中的内容连接进来。
【操作步骤】
步骤1:打开考生文件夹下的本题工程文件sjt4.vbp。 步骤2:在窗体Form1中加入两个文本框、一个标签和两个单选按钮,分别设置它们的相关属性,其属性及值如表2所示。
表2
步骤3:打开代码编辑窗口输入如下代码: 参考代码:
Private Sub Form_Click()
—21—
If Op1 Then
Lab1.Caption = Text1.Text Text1.Text = Text2.Text Text2.Text = Lab1.Caption Lab1.Caption = \交换成功\ ElseIf Op2 Then
Lab1.Caption = Text1.Text & Text2.Text
End If End Sub
步骤4:按要求将文件保存至考生文件夹中。
步骤5:按
【审题分析】本题原程序已提供用于读数的ReadData1、ReadData2和用于写盘的WriteData几个自定义过程,只需编写\读入数据\、\计算\和\存盘\命令按钮的单击事件过程,并在事件过程中调用ReadData1、ReadData2和WriteData自定义过程。
程序设计思路:在\读入数据\按钮的Click事件过程中,通过调用ReadData1和ReadData2过程将数据从文件datain1.txt和datain2.txt中读入到数组Arr1和Arr2(窗体变量)中;在\计算\按钮的Click事件过程中,利用For循环语句(循环变量i的初值为1,终值为20)依次将数组Arr1和Arr2同下标的元素相除并截尾取整放入第三个数组中并累加到变量Sum,循环结束后将Sum的值显示在窗体上。在\保存\按钮的Click事件过程中,通过调用WriteData过程将Sum的值写入数据文件dataout.txt。
注意:调用WriteData过程时需传递参数dataout.txt和Sum,变量Sum应声明为窗体变量。
【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt5.vbp,在窗体中如表3画出控件,并设置其属性。
表3
步骤2:在代码编辑窗口编写以下事件过程。 参考代码:
Dim Sum As Integer Private Sub C1_Click() ReadData1 ReadData2 End Sub
Private Sub C2_Click()
Dim Arr3(20) As Integer Sum = 0
For i = 1 To 20
Arr3(i) = Int(Arr1(i) / Arr2(i)) Sum = Sum + Arr3(i) Next i
Print \End Sub
Private Sub C3_Click()
WriteData \End Sub
步骤3:按要求将文件保存至考生文件夹中。
步骤4:按
第四十四套上机答案解析209
一、基本操作题
第1小题
【知识点拔】菜单中所包含的每一个菜单项都可看成是一个命令按钮,程序运行时,选择某菜单项将触发其Click事件。
【审题分析】要实现本题中的功能,应在\显示\菜单
项的Click事件过程中,为文本框的Text属性赋值为\等级考试\,在\退出\菜单项的Click事件过程中,结束程序的运行。
【操作步骤】
步骤1:新建一个\标准EXE\工程,在窗体Form1中画一个名为Text1的文本框。
步骤2:选择【工具】→【菜单编辑器】命令,打开菜单设计器,如表1中的设置建立菜单项。
表1
步骤3:打开代码编辑窗口,编写\显示\和\退出\菜单命令的单击事件过程。
参考代码:
Private Sub Dis_Click()
Text1.Text = \等级考试\End Sub
Private Sub Exit_Click() End End Sub
步骤4:按要求将文件保存至考生文件夹中。 第2小题
【知识点拔】列表框控件(ListBox)用于显示可供单一或多个选择的列表项,给列表框添加列表项既可以在设计阶段通过其List属性设置加入,也可在程序运行时使用AddItem方法加入。在程序运行时删除列表框中的项目可以使用RemoveItem方法,其语法为:列表框.RemoveItem 索引值。其中,\索引值\可以指定插入项在列表框中的位置,从0开始计数。
【审题分析】单击列表框中的某个项目,将触发其Click事件。要实现单击列表框中的某一项,该项就从列表中消失的功能,只需在Click事件过程中编写删除项目的语句即可。列表框的ListIndex属性可返回当前选择的项目的索引号,因此删除选中项目的语句为:
L1.RemoveItem L1.ListIndex。 【操作步骤】
步骤1:新建一个\标准EXE\工程,在窗体Form1中加入一个列表框,在属性设置窗口中将其Name属性设置为L1,在其List属性中添加四个项目,依次为\、\、\和\。注意:每输入完一项后按
步骤2:打开代码编辑窗口,编写列表框的Click事件过程:
参考代码:
Private Sub L1_Click()
L1.RemoveItem L1.ListIndex End Sub
步骤3:按要求将文件保存至考生文件夹中。
【考试误区】本题应编写列表框控件的Click事件。同时注意,删除某一列表项使用RemoveItem方法,而不是Cls方法。
【主要考点】本题考查考生对列表框控件的掌握。
二、简单应用题
第1小题
【审题分析】根据题目要求,在\确定\按钮的单击事件过程中,先用If语句判断框架F1中的Op1是否选中(即以Op1.Value=True为条件表达式),如果条件为真,那么再继续判断框架F2中的Op3是否选中(即以Op3.Value= True为条件表达式),当Op3被选中时,文本框中显示\坐飞机去广州\,否则显示\坐飞机去昆明\;同理在外层If语句条件为假(即Op2被选中)时,也作类似处理。这样一共就有四种可能:Op1和Op3被选中、Op1和Op4被选中、Op2和Op3被选中、Op2和Op4被选中,对于可能出现的不同选择对照题目中表的规定,在文本框中显示不同内容。以上判断和显示操作均在C1的Click事件中完成。 —22—
【操作步骤】
步骤1:打开考生文件夹下的本题工程文件sjt3.vbp。 步骤2:在窗体Form1中加入两个框架和一个文本框以及一个命令按钮,然后在每个框架中各加入两个单选按钮,分别设置他们的相关属性,其属性及值如表2所示。
表2
步骤3:打开代码编辑窗口输入如下代码: 参考代码:
Private Sub C1_Click() If Op1 And Op3 Then
Text1.Text = \坐飞机去广州\ ElseIf Op1 And Op4 Then
Text1.Text = \坐飞机去昆明\ ElseIf Op2 And Op3 Then
Text1.Text = \坐火车去广州\ ElseIf Op2 And Op4 Then
Text1.Text = \坐火车去昆明\ End If End Sub
步骤4:按要求将文件保存至考生文件夹中。
步骤5:按
【考试误区】某容器中的单选按钮组只能有一个被选中。
第2小题
【审题分析】根据题目要求,设计本题程序的思路当Op1被选中时,将两个文本框中的内容通过一个中间变量进行交换;当Op2被选中时,将两个文本框中的内容连接起来。
【操作步骤】
步骤1:打开考生文件夹下的本题工程文件sjt4.vbp。 步骤2:在窗体Form1中加入三个文本框和两个单选按钮,分别设置它们的相关属性,其属性及值如表3所示。
表3
步骤3:打开代码编辑窗口输入如下代码: 参考代码:
Private Sub Op1_Click() a$ = Text1.Text
Text1.Text = Text2.Text
Text2.Text = a$ Op1.Visible = False End Sub
Private Sub Op2_Click()
Text3.Text = Text1.Text & Text2.Text End Sub
步骤4:按要求将文件保存至考生文件夹中。
步骤5:按
【特别提示】在一个容器中的多个单选按钮只能有一个被选中,由此分出不同分支,理清思路是关键。 三、综合操作题
【审题分析】本题原程序已提供用于读数的ReadData1、ReadData2和用于写盘的WriteData几个自定义过程,只需编写\读入数据\、\计算\和\存盘\命令按钮的单击事件过程,并在事件过程中调用ReadData1、ReadData2和WriteData自定义过程。
程序设计思路:在\读入数据\按钮的Click事件过程中,通过调用ReadData1和ReadData2过程将数据从文件datain1.txt和datain2.txt中读入到数组Arr1和Arr2(窗体变量)中;在\计算\按钮的Click事件过程中,利用For循环语句(循环变量i的初值为1,终值为20)依次将数组Arr1和Arr2同下标的元素相加(表达式为:Arr3(i)= Arr1(i)+Arr2(i)),并累加到变量Sum,循环结束后将Sum的值显示在窗体上。在\保存\按钮的Click事件过程中,通过调用WriteData过程将Sum的值写入数据文件dataout.txt。
注意:调用WriteData过程时需传递参数dataout.txt和Sum,变量Sum应声明为窗体变量。
【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt5.vbp,在窗体中如表4画出控件,并设置其属性。
表4
步骤2:在代码编辑窗口编写以下事件过程。 参考代码:
Dim Sum As Integer Private Sub C1_Click() ReadData1 ReadData2 End Sub
Private Sub C2_Click()
Dim Arr3(20) As Integer Sum = 0
For i = 1 To 20
Arr3(i) = Arr1(i) + Arr2(i) Sum = Sum + Arr3(i) Next i
Print \End Sub
Private Sub C3_Click()
WriteData \End Sub
步骤3:按要求将文件保存至考生文件夹中。
步骤4:按
【特别提示】在多个过程中使用同一个变量,应声明为窗体变量。
第四十五套上机答案解析210
一、基本操作题
第1小题
【审题分析】本题只需按题目要求利用VB菜单设计器建立一个二级菜单,并且将其中一个菜单项设置为无效。 —23—
【操作步骤】
步骤1:新建一个\标准EXE\工程,利用菜单设计器如表1在窗体上建立一个二级菜单。
表1 控件属性设置
步骤2:按要求将文件保存至考生文件夹中。 第2小题
【审题分析】为在Text1中将输入内容显示为\,需将Text1的PasswordChar属性值设置为\。要实现程序运行时,在Text1中输入一个字符,就能在Text2中显示的功能,可在Text1的Change事件过程中,加入让Text2显示内容始终与Text1保持一致的语句。
【操作步骤】
步骤1:新建一个\标准EXE\工程。
步骤2:在窗体Form1中加入两个文本框,并分别设置它们的相关属性,属性及值如表2所示。
表2
步骤3:双击Text1文本框,打开代码编辑窗口,在Text1的Change事件过程中输入如下代码:
参考代码:
Private Sub Text1_Change() Text2.Text = Text1.Text End Sub
步骤4:按要求将文件保存至考生文件夹中。
二、简单应用题
第1小题
【审题分析】本题要求在程序运行后,单击\交换图片\命令按钮时,交换两个图片框中的图片。因此可在命令按钮的Click事件过程中,通过LoadPicture()函数分别为两个图片框重新加载图片。App.Path可返回当前工程文件所在的文件夹路径,是使用相对路径的一种用法。
【操作步骤】
步骤1:新建一个\标准EXE\工程,在窗体Form1中如表3画出所列控件并设置其相关属性。
表3
步骤2:打开代码编辑窗口,编写命令按钮的Click事件过程:
参考代码:
Private Sub C1_Click()
Pic1.Picture = LoadPicture(App.Path + \Pic2.Picture = LoadPicture(App.Path + \End Sub
步骤3:按要求将文件保存至考生文件夹中。 第2小题
【审题分析】为实现本题所要求的功能可在\确定\按钮的单击事件过程中,先设置文本框的初始内容为\我选的课是\,然后用两个If语句分别判断两个复选框是否选中,若选中则将其对应信息输入文本框中。
【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt3.vbp,如表4在窗体中画出控件并设置属性。
表4 控件属性设置
步骤2:在代码编辑窗口,编写\确定\按钮的单击事件。 参考代码:
Private Sub C1_Click()
Text1.Text = \我选的课是\ If Ch1.Value Then
Text1.Text=Text1.Text+Ch1.Caption End If
If Ch2.Value = 1 Then
Text1.Text=Text1.Text+ Ch2.Caption End If End Sub
步骤3:按要求将文件保存至考生文件夹中。
三、综合操作题
【审题分析】程序设计思路:在\输入\按钮的单击事件过程中,用Open语句以Input方式打开数据文件in5.txt,并用Input ()函数读出所有字符后显示在文本框中;在\计算\按钮的单击事件过程中,调用过程isprime来求解大于Text1中整数的第一个素数。
在\存盘\按钮的单击事件过程中,用Open语句以Output方式打开数据文件out5.txt,并通过For循环用Print #方法逐一将数组中的元素存入该文件。
【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt5.vbp,在代码编辑窗口,分别编写命令按钮的单击事件。
参考代码:
Private Sub C1_Click()
Open \ Input #1, a% Close #1
Text1.Text = a% End Sub
Private Sub C2_Click() a% = Text1.Text Do
a% = a% + 1
Loop Until isprime(a%) Text2.Text = a% End Sub
Private Sub C3_Click()
Open \ Print #1, Text2.Text Close #1 End Sub
步骤2:按要求将文件保存至考生文件夹中。
【主要考点】文件读写操作、过程调用、简单运算。
第四十六套上机答案解析211
一、基本操作题
第1小题
【知识点拔】复选框和单选按钮的Alignment属性用于设置复选框中标题的对齐方式,0-Left Justify为控件居左标题居右(默认),1-Right Justify为控件居右标题居左。 —24—
表1
【审题分析】本题只需按题目在窗体中画出控件,并设置相关属性即可。
【操作步骤】
步骤1:新建一个\标准EXE\工程,如表1在窗体中画出控件并设置其相关属性。
步骤2:按要求将文件保存至考生文件夹中。 第2小题
【审题分析】根据题意,本题需在滚动条的Change事件中改变图像框的宽度和高度,在窗体的Load事件中初始化全局变量。
【操作步骤】
步骤1:新建一个\标准EXE\工程,在窗体Form1中画一个图像框、一个水平滚动条和一个水平滚动条,在属性设置窗口中设置其相关属性,其属性及值如表2所示。
表2
步骤2:打开代码编辑窗口,分别编写滚动条的Change事件过程和窗体的Load事件过程。
参考代码: Dim length, high
Private Sub Form_Load() length = Image1.Width high = Image1.Height End Sub
Private Sub HScroll1_Change()
Image1.Width = HScroll1.Value * length End Sub
Private Sub VScroll1_Change()
Image1.Height = VScroll1.Value * high End Sub
步骤3:按要求将文件保存至考生文件夹中。 【主要考点】滚动条控件。
二、简单应用题 第1小题
【知识点拔】①鼠标事件分点击事件和状态事件。点击事件有单击事件(Click)和双击事件(DblClick),不区分左右键;状态事件有按下事件(MouseDown)、移动事件(MouseMove)和弹起事件(MouseUp)。 状态事件涉及Button、Shift两个参数:Button参数是一个整数,值可能为1(左键)、2(右键)或4(中间键);Shift参数也是一个整数,用来代表用户是否按下
②弹出式菜单是显示于窗体之上,独立于菜单栏的浮动式菜单。PopupMenu方法可在对象上的当前鼠标位置或指定的坐标位置显示弹出式菜单。
【审题分析】要创建本题的弹出式菜单需先用菜单编辑器来建立菜单,并将其主菜单项的可见(即Visible)属性值设置为False,
然后在窗体的MouseDown(或MouseUp)事件过程中,判断该事件的Button参数值是否为2,若是则执行窗体的PopupMenu方法来显示菜单。
在相应菜单项的Click事件过程中,可以调用fact函数来计算7!,fact函数是一个求阶乘的函数,通过For循环依次累乘实现。 【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt3.vbp,在代码编辑窗口,去掉程序中的注释符\,将问号\改为正确的内容。
参考代码:
If Button = 2 Then
PopupMenu mypopmenu For k = n To 1 Step -1 Text2 = fact(7)
步骤2:按要求将文件保存至考生文件夹中。 第2小题
【审题分析】本题程序运行时,在文本框中输入商品名称,当单击命令按钮的时候,首先判断该商品是否在列表框中存在。由于列表框中的每一项都是商品名称+空格+单价的组合,因此在循环判断列表框的每一项时,首先找到列表项里面空格的位置,然后取出空格之前的字符就是商品名称,和文本框中输入的数据进行对比,如果一致则说明有此商品,那么取出列表项的后4个字符即商品单价进行操作,并且在退出循环的同时令旗帜变量flag变为True。当循环结束后,如果flag变量的值为True则证明有此商品,将单价*数量的值显示在文本框中,否则在文本框中显示\无此商品\。
【操作步骤】
步骤1:打开考生文件夹下的本题工程文件sjt4.vbp,在代码编辑窗口,去掉程序中的注释符\,将问号\改为正确的内容。
参考代码:
For k = 1 To List1.ListCount - 1 name = Left(List1.List(k), n - 1) price = Val(Right(List1.List(k), 4)) Text3 = \无此商品\
步骤2:按要求将文件保存至考生文件夹中。
三、综合操作题
【知识点拔】①Type语句用于在模块级别中定义一个用户自己的数据类型,其本质上是一个数据类型集合,它含有一个或一个以上的成员,每个成员可以被定义为不同的数据类型。声明自定义类型变量后,可通过\变量名.成员名\来访问自定义变量中的元素。②用Open语句打开随机文件,其语法格式为:Open FileName for Random as #FileNumber Len=记录长度。记录长度是一条记录实际所占字节数,可用Len(记录变量名)函数获取;Get#语句用于从文件中读出某记录号的记录,格式为:Get # FileNumber,[RecordNuber], Var;Put#语句用于把记录按指定记录号写入文件,格式为:
Put # FileNumber,[RecordNuber],Var。
【审题分析】本题原程序设计思路:在\计算最大最小值\命令按钮的单击事件过程中,先用Open语句打开考生文件夹下的随机文件in5.txt;然后预定义最大值为0,最小值为300(3门课程总成绩不可能超过300),在For循环中,依次使用Get语句取出记录内容到自定义数据类型变量s,然后将s的各元素累加起来,并将总分(s中各元素的累加和)和预定义的最大值以及最小值进行比较,如果总分大于最大值则将其存入最大值,如果总分小于最小值则将其存入最小值,然后进行下一次循环判断下一条记录。
【操作步骤】
步骤1:打开考生文件中的本题工程文件sjt5.vbp,在代码编辑窗口的适当位置编写代码。
参考代码:
Private Sub Command1_Click() Dim s As Recordtype
Open \
maxval = 0 minval = 300 For k = 1 To 20 Get #1, , s
—25—
sumval = s.a1 + s.a2 + s.a3
If sumval > maxval Then maxval = sumval If sumval < minval Then minval = sumval
Next k Close #1 End Sub
步骤2:运行程序,单击\计算最大最小值\命令按钮,然后单击\存盘\按钮。
步骤3:按要求将文件保存至考生文件夹中。
第四十七套上机答案解析212
一、基本操作题
第1小题
【审题分析】本题只需按题目要求画出框架和单选按钮,并分别设置其属性。
【操作步骤】
步骤1:新建一个\标准EXE\工程,如表1在窗体上绘制控件并设置属性。
表1 控件属性设置
步骤2:按要求将文件保存至考生文件夹中。 第2小题
【知识点拔】Visible(可见)属性用于设置控件或菜单项在程序运行时是否可见,值为True表示可见,值为False表示不可见。
【审题分析】本题的考核要求有两项。 【操作步骤】
步骤1:打开本题工程文件sjt2.vbp,在窗体中画一个直线控件和两个命令按钮,并设置其相关属性如表2所示。
表2
步骤2:打开代码编辑窗口,编写命令按钮的Click事件过程。
参考代码:
Private Sub Cmd1_Click() Line4.Visible = True End Sub
Private Sub Cmd2_Click() Line4.Visible = False End Sub
步骤3:按要求将文件保存至考生文件夹中。
二、简单应用题
第1小题
【审题分析】可借助计时器来完成有规律性时间间隔执行的任务。本题计时器工作时,为使文本框中的数每隔1秒加1,需将计时器的Interval属性值设置为1000毫秒,在命令按钮数组的单击事件过程中通过判断触发事件的元素下标来执行启动计时器或者关闭计时器,在计时器的Timer事件过程中通过语句Text1.Text=Text1.Text+1实现加1。
【操作步骤】