1、(A)二级 VISUAL+BASIC 笔试-1 及答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:40.00)1.在名称为 Form1 的窗体上添加一个名称为 Frame1、标题为“框架”的框架,在框架内添加两个名称分别为 Option1、Option2 的单选按钮,其标题分别为“第一项”、“第二项”。要求通过设置控件的属性将“第二项”初始值设置为被选中,框架为不可用。运行程序后的窗体如图所示。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt1.vbp,窗体文件名保存为 sjt1.frm。(分数:20.00)_2.在名称为 Form1 的窗体上
2、添加一个名称为 Drivel 的驱动器列表框,一个名称为 Dirl 的目录列表框,一个名称为 Filel 的文件列表框,名称为 Label1、标题为“文件名”的标签和名称为 Label2、BorderStyle为 1 的标签。将窗体的标题设置为“文件系统控件”,如图所示。请编写适当的程序,使得这三个文件系统控件可以同步变化,即当驱动器列表框中显示的内容发生变化时,目录列表框和文件列表框中显示的内容同时发生变化。单击文件列表框时,将在 Label2 中显示选中的文件名。注意:要求程序中不得使用变量,事件过程中只能写一条语句。存盘时必须存放在考生文件夹下,工程文件名保存为 sjt2.vbp, 窗体
3、文件名保存为 sjt2.frm。(分数:20.00)_二、简单应用题(总题数:2,分数:40.00)3.考生文件夹下有一个工程文件 sjt3.vbp。程序的功能是:通过键盘向文本框中输入数字,如果输入的是非数字字符,则提示输入错误,且文本框中不显示输入的字符。单击名称为 Command1、标题为“添加”的命令按钮,则将文本框中的数字添加到名称为 Combo1 的组合框中。在给出的窗体文件中已经添加了全部控件,但程序不完整。要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序中的其他部分和其他控件的属性。最后把修改后的文件按原文件名存盘。(分数:20.00)_4.在考生文件夹下
4、有一个工程文件 sjt4.vbp。该程序的功能是计算 M!+(M+1)!+(M+2)!+N!之和。窗体上有名称分别为 Text1、Text2 的两个文本框,用于接收输入的 M 和 N(要求 MN)。单击名称为Connnandl、标题为“计算”的命令按钮,计算 M!+(M+1)!+(M+2)!+N!的值,并将计算结果显示在标签lblResult 中。在给出的窗体文件中已经有了全部控件,但程序不完整,要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。(分数:20.00)_三、综合应用题(总题数:1,分数:20.00)5.在
5、考生文件夹下有一个工程文件 sjt5.vbp,功能是用来计算勾股定理整数组合的个数。勾股定理中 3个数的关系是:a 2+b2=c2。例如,3、4、5 就是一个满足条件的整数组合(注意:a,b,c 分别为 4,3,5与分别为 3,4,5 被视为同一个组合,不应该重复计算)。编写程序,统计均在 60 以内的三个数满足上述关系的整数组合的个数,并显示在标签 Label1 中。注意:不得修改原有程序的控件属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。(分数:20.00)_(A)二级 VISUAL+BASIC 笔试-1 答案解
6、析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:40.00)1.在名称为 Form1 的窗体上添加一个名称为 Frame1、标题为“框架”的框架,在框架内添加两个名称分别为 Option1、Option2 的单选按钮,其标题分别为“第一项”、“第二项”。要求通过设置控件的属性将“第二项”初始值设置为被选中,框架为不可用。运行程序后的窗体如图所示。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt1.vbp,窗体文件名保存为 sjt1.frm。(分数:20.00)_正确答案:(操作步骤步骤 1:建立界面,添加相应的控件并设置控件的属性。程序中用到的控件及
7、属性见表。控件 框架 单选按钮 1 单选按钮 2属性 Name CaptionEnabledName CaptionName CaptionValue设置值 Frame1框架 False Option1第一项 Option2第二项 True步骤 2:调试并运行程序,关闭程序后按题目要求存盘。)解析:考点 本题考点有:框架的 Name、Coption 和 Enabled 属性以及单选按钮的 Name、Caption 和Value 属性。通过框架的 Name、Caption 和 Enabled 属性设置框架的名称、标签以及是否可用。通过单选按钮的Name、Caption 和 Value 属性设置单
8、选按钮的名称、标签以及是否被选中。2.在名称为 Form1 的窗体上添加一个名称为 Drivel 的驱动器列表框,一个名称为 Dirl 的目录列表框,一个名称为 Filel 的文件列表框,名称为 Label1、标题为“文件名”的标签和名称为 Label2、BorderStyle为 1 的标签。将窗体的标题设置为“文件系统控件”,如图所示。请编写适当的程序,使得这三个文件系统控件可以同步变化,即当驱动器列表框中显示的内容发生变化时,目录列表框和文件列表框中显示的内容同时发生变化。单击文件列表框时,将在 Label2 中显示选中的文件名。注意:要求程序中不得使用变量,事件过程中只能写一条语句。存盘
9、时必须存放在考生文件夹下,工程文件名保存为 sjt2.vbp, 窗体文件名保存为 sjt2.frm。(分数:20.00)_正确答案:(操作步骤步骤 1:新建一个窗体,按照题目要求建立驱动器列表框、目录列表框和文件列表框控件并设置其属性,如图所示。)解析:考点 本题考点有:标签的 Name、Caption 属性,窗体的 Caption 属性,驱动器列表框的 Name和 Path 属性,目录列表框的 Name 和 Path 属性以及文件列表框的 Name、Path 和 FileName 属性。在实际应用中,驱动器列表框、目录列表框和文件列表框通常需要同步操作,这可以通过 Path 属性的改变引发
10、Change 事件来实现。例如:Private Sub Dir1_Chanqe()File1.Path=Dir1.PathEnd Sub该事件过程使窗体上的目录列表框 Dir1 和文件列表框 File1 产生同步。因为目录列表框的 Path 属性的改变将产生 Change 事件,所以在 Dirl_Change 事件过程中,把 Dir1.Path 赋给 Filel.Path 即可产生同步效果。类似地,增加下面的事件过程可使三种列表框同步操作。例如:Private Sub Drive1_Change()Dir1.Path=Drive1.DriveEnd Sub该过程使驱动器列表框与目录列表框同步,
11、前面的过程使目录列表框与文件列表框同步,从而使三种列表框同步。在编写代码时,“l”(L)和 1 比较相似,注意不要混淆。二、简单应用题(总题数:2,分数:40.00)3.考生文件夹下有一个工程文件 sjt3.vbp。程序的功能是:通过键盘向文本框中输入数字,如果输入的是非数字字符,则提示输入错误,且文本框中不显示输入的字符。单击名称为 Command1、标题为“添加”的命令按钮,则将文本框中的数字添加到名称为 Combo1 的组合框中。在给出的窗体文件中已经添加了全部控件,但程序不完整。要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序中的其他部分和其他控件的属性。最后把修
12、改后的文件按原文件名存盘。(分数:20.00)_正确答案:(操作步骤步骤 1:打开本题工程文件。步骤 2:打开代码编辑窗口,去掉程序中的注释符“”,将问号改为正确的内容。参考答案(阴影部分是需考生填入的内容)Private Sub Command1_Click()Combo1.AddItem Text1.Text 将 Text1 中的内容加入 Combo1 中Text1.Text=“ 同时将 Text1 内容清除End SubPrivate Sub Text1 KeyPress(KeyAscii As Integer)If KeyAscii57 Or KeyAscii48 Then数字的 As
13、cii 码值下界MsgBox“请输入数字!“KeyAscii=0清空End IfEnd Sub步骤 3:调试并运行程序,关闭程序后按题目要求存盘。)解析:考点 本题考点有:组合框的 List 属性、文本框的 Text 属性、MsgBox()函数、ASCII 码以及 If判断语句。单击命令按钮,运用组合框的 List 属性将文本框中的数字添加到组合框中,通过 ASCII 码来判断输入的是否为数字字符。4.在考生文件夹下有一个工程文件 sjt4.vbp。该程序的功能是计算 M!+(M+1)!+(M+2)!+N!之和。窗体上有名称分别为 Text1、Text2 的两个文本框,用于接收输入的 M 和
14、N(要求 MN)。单击名称为Connnandl、标题为“计算”的命令按钮,计算 M!+(M+1)!+(M+2)!+N!的值,并将计算结果显示在标签lblResult 中。在给出的窗体文件中已经有了全部控件,但程序不完整,要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。(分数:20.00)_正确答案:(操作步骤步骤 1:打开本题工程文件。步骤 2:打开代码编辑窗口,去掉程序中的注释符,将问号改为正确的内容。参考答案(阴影部分是需考生填入的内容)Private Sub Command1_Click()Dim m As I
15、ntegerDim n As IntegerDim s As LongDim i As Integerm=Val(Text1.Text)将文本框中的字符转换成数值型n=Val(Text2.Text)s=0For i=m To n-mt=f(i) 调用函数得到 N 的阶乘s=s+tNextlblResult.Caption=sEnd SubPrivate Function f(ByRef x As Integer)AsLong ByRef 为传址传递Dim t As Longt=1For i=1 To x 实现对数值进行阶乘运算t=t*iNextf=t 返回计算结果End Function步骤
16、3:调试并运行程序,关闭程序后按题目要求存盘。)解析:考点 本题考点有:标签的 Caption 属性、Val()函数和 For 循环语句。Function f()过程函数用于实现对数值阶乘的运算,Val()函数实现将文本框中的字符转换成数值型,通过循环调用过程函数实现对表达式结果的累加。程序语句较少,表达式比较复杂,要充分理解过程函数的算法及主函数的循环语句的运用。三、综合应用题(总题数:1,分数:20.00)5.在考生文件夹下有一个工程文件 sjt5.vbp,功能是用来计算勾股定理整数组合的个数。勾股定理中 3个数的关系是:a 2+b2=c2。例如,3、4、5 就是一个满足条件的整数组合(注
17、意:a,b,c 分别为 4,3,5与分别为 3,4,5 被视为同一个组合,不应该重复计算)。编写程序,统计均在 60 以内的三个数满足上述关系的整数组合的个数,并显示在标签 Label1 中。注意:不得修改原有程序的控件属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。(分数:20.00)_正确答案:(操作步骤步骤 1:打开本题工程文件。步骤 2:打开代码编辑窗口,在代码编辑窗口指定位置编写以下代码。参考答案Dim i As IntegerDim j As IntegerDim k As IntegerFor i=1 T
18、o 60For j=1 To 60For k=1 To 60判断三个数是否满足勾股定律If i2=j2+k2 Thenm=m+lm 为记录满足条件的个数End IfNext kNext jNext iLabel1=m/2 去掉相同的项步骤 3:调试并运行程序,关闭程序后按题目要求存盘。)解析:考点 本题考点有:嵌套循环、文件编辑以及 If 判断语句。通过循环嵌套实现遍历 60 以内的整数,通过勾股定理表达式判断是否为勾股数整数组合,并通过变量的累加实现勾股定理整数组合个数的统计。注意通过嵌套循环得出的 m 值,为所求 m 值的 2 倍,例如 52=42+32,同时 52=32+42,因此最后的值应为 m/2。