1、VB 机试-试卷 70 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)在名称为 Forml 的窗体上建立一个二级下拉菜单。一级菜单的标题为“编辑”,名称为 vbEdit,有效。二级菜单有两项,一项标题为“复制”,名称为 vbCopy,有效,命令执行的快捷方式为 Crtl+C;另一项标题为“粘贴”,名称为 vbPaste,无效,命令执行的快捷方式为 Ctrl+P。程序运行时,窗体界面如图 69 一 1 所示。 注意:存盘时必须存放到考生文件夹下,工程文件名为 sjlvbp,窗体文件名为sjlfrm。
2、 (2)在名称为 Forml 的窗体上画一个文本框,其名称为 Textl,然后通过属性窗口设置窗体和文本框属性;文本框中显示的初始信息为“模拟考试”,字体为四号、常规、黑体,并有删除线,文本框可以显示多行文本且只有垂直滚动条。不编写任何代码。程序运行时的窗体界面如图 692 所示。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在考生文件夹中有一个工程文件 sj3vbp,相应的窗体文件为 sj3frm。在名为 Form1 的窗体上有一个命令按钮,其名称为 Commandl,标题为“添加”;有一个文本框,名为 Textl,初始内容为
3、空白;此外还有一个列表框,其名称为 Listl。程序运行后,如果在文本框中输入一个英文句子(由多个单词组成,各单词之间用一个空格分开),然后单击命令按钮,程序将把该英文句子作为一个项目添加到列表框中,如图 4l 一 4 所示。 该程序不完整,请补充完整。 注意:去掉程序中的注释符“”,把程序中的问号“?”改为正确的内容,使其能正确运行,但不得修改程序的其他部分最后,按原文件名并在原文件夹中保存修改后的文件。 (2)在考生文件夹中有工程文件 sj4vbp 及窗体文件 sj4frm。在名为 Forml的窗体上有 2 个框架、7 个标签和 7 个文本框,所有控件已经画好。判断输入的条件是否为三角形,
4、若是三角形,则在 Textl 中显示“是三角形”;在 Text2 中显示是何种三角形。单击“重新输入”按钮可以清空所有显示框,且按钮本身变为无效状态。当单击“判断并计算”按钮之后重新恢复为可用状态。程序运行情况如图 415 所示。该程序的功能是:根据给定的图形的三边的边长来判断图形的类型。若为三角形则同时计算出为何种三角形及三角形的周长和面积。 (分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在考生文件夹中有工程文件 sj5vbp 及其窗体文件 sj5frm,该程序是不完整的。在名称为 Forml 的窗体上有一个文本框,名称为 Text
5、l、MultiLine 属性为 True、ScrollBars 属性为 2;两个命令按钮,名称分别为 Commandl 和 Command2、标题分别为“读取”和“计算保存”,程序运行时的窗体界面如图 285 所示。要求程序运行后,如果单击“读取”按钮,则读入 intxt 文件中的 50 个整数放人一个数组中(数组下界为 1),同时在文本框中显示出来;如果单击“计算保存”按钮,则计算大于或等于 500 的所有数的平均数,并把求得的结果在文本框 Textl 中显示出来,同时把该结果存人考生文件夹中的文件outtxt 中。(在考生文件夹下的标准模块 modebas 中的 writedata 过程可
6、以把结果存入指定的文件。)(分数:2.00)_VB 机试-试卷 70 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)在名称为 Forml 的窗体上建立一个二级下拉菜单。一级菜单的标题为“编辑”,名称为 vbEdit,有效。二级菜单有两项,一项标题为“复制”,名称为 vbCopy,有效,命令执行的快捷方式为 Crtl+C;另一项标题为“粘贴”,名称为 vbPaste,无效,命令执行的快捷方式为 Ctrl+P。程序运行时,窗体界面如图 69 一 1 所示。 注意:存盘时必须存放到考生文件夹下,工程
7、文件名为 sjlvbp,窗体文件名为sjlfrm。 (2)在名称为 Forml 的窗体上画一个文本框,其名称为 Textl,然后通过属性窗口设置窗体和文本框属性;文本框中显示的初始信息为“模拟考试”,字体为四号、常规、黑体,并有删除线,文本框可以显示多行文本且只有垂直滚动条。不编写任何代码。程序运行时的窗体界面如图 692 所示。(分数:2.00)_正确答案:(正确答案:(1)根据题意,新建“标准 EXE”工程,在窗体空白处单击右键,在弹出的快捷菜单中选择“菜单编辑器”命令,或按“Ctrl+E”组合键,打开菜单编辑器,添加以下菜单项: 添加完成后,单击“确定”按钮。再单击 按钮运行程序,并按要
8、求保存。 (2)根据题意,新建“标准EXE”工程,将一个文本框控件添加到窗体中,其名称为 Text1,Text 属性为“模拟考试”,Font 属性为“常规”、“黑体”、“四号”,并选中删除线复选按钮,MultiLIne 属性为 True,Scrollbars 属性为2。单击 )解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在考生文件夹中有一个工程文件 sj3vbp,相应的窗体文件为 sj3frm。在名为 Form1 的窗体上有一个命令按钮,其名称为 Commandl,标题为“添加”;有一个文本框,名为 Textl,初始内容为空白;此外还
9、有一个列表框,其名称为 Listl。程序运行后,如果在文本框中输入一个英文句子(由多个单词组成,各单词之间用一个空格分开),然后单击命令按钮,程序将把该英文句子作为一个项目添加到列表框中,如图 4l 一 4 所示。 该程序不完整,请补充完整。 注意:去掉程序中的注释符“”,把程序中的问号“?”改为正确的内容,使其能正确运行,但不得修改程序的其他部分最后,按原文件名并在原文件夹中保存修改后的文件。 (2)在考生文件夹中有工程文件 sj4vbp 及窗体文件 sj4frm。在名为 Forml的窗体上有 2 个框架、7 个标签和 7 个文本框,所有控件已经画好。判断输入的条件是否为三角形,若是三角形,
10、则在 Textl 中显示“是三角形”;在 Text2 中显示是何种三角形。单击“重新输入”按钮可以清空所有显示框,且按钮本身变为无效状态。当单击“判断并计算”按钮之后重新恢复为可用状态。程序运行情况如图 415 所示。该程序的功能是:根据给定的图形的三边的边长来判断图形的类型。若为三角形则同时计算出为何种三角形及三角形的周长和面积。 (分数:2.00)_正确答案:(正确答案:(1)Len()函数用于返回指定字符串的长度。使用 Mid 函数取出字符串中的字符。Mid 函数的格式为:Mid(字符串,P,n)。Mid 函数从第 P 个字符开始,向后截取 n 个字符,P 和 n 都是算术表达式。Mid
11、 函数的第三个变量可以省略,这样将第 P 个字符开始先后截取到字符串的结尾。根据题意,双击 Commandl 命令按钮进入代码窗口,补充后的代码如下: Private Sub Commandl Click() Dim sl As String,s2 As String Dim 11 As Integer s1=Textl I1=1 Do Do While Mid(sl,11,1)b And b+ca Then TextlText=“是三角形“ 1f a2+b2=c2 Or a2+c2=b2 Orb2+c2=a2 Then Text2Text=“是直角三角形“ Else If a2+b2c2 A
12、nd a2+c2b2 And b2+c2a2 Then Text2Text=“是锐角三角形“ Else:Text2Text=“是钝角三角形“ End If End If Text3Text=a+b+C 计算三角形的周长 L=(a+b+c)2 Text4Text=Sqr(L*(L-a)*(L-b)*(L-c) 计算三角形的面积 Else:TextlText=“非三角形“ Text2Text=“ Text3Text=“ Text4Text=“ End If Command2Enabled=True End Sub Private Sub Command2_Click() 此处需要设置,以实现清空所
13、有文本框和使“重新输入”按钮无效的功能 TextlText=“ Text2Text=“ Text3Text=“ Text4Text=“ Text5Text=“ Text6Text=“ Text7Text=“ Command2Enabled=False End Sub Private Sub Command3_Click() End End Sub Private Sub Form Load() TextlEnabled=False Text2Enabled=False Text3Enabled=False Text4Enabled=False Command2Enabled=False End
14、 Sub 单击 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在考生文件夹中有工程文件 sj5vbp 及其窗体文件 sj5frm,该程序是不完整的。在名称为 Forml 的窗体上有一个文本框,名称为 Textl、MultiLine 属性为 True、ScrollBars 属性为 2;两个命令按钮,名称分别为 Commandl 和 Command2、标题分别为“读取”和“计算保存”,程序运行时的窗体界面如图 285 所示。要求程序运行后,如果单击“读取”按钮,则读入 intxt 文件中的 50 个整数放人一个数组中(数组下界为 1),同时在文
15、本框中显示出来;如果单击“计算保存”按钮,则计算大于或等于 500 的所有数的平均数,并把求得的结果在文本框 Textl 中显示出来,同时把该结果存人考生文件夹中的文件outtxt 中。(在考生文件夹下的标准模块 modebas 中的 writedata 过程可以把结果存入指定的文件。)(分数:2.00)_正确答案:(正确答案:文本框显示的内容由 Text 属性设置,Multiline 属性设置文本框是否可多行显示;按钮的标题由 Caption 属性设置,单击命令按钮触发 Click 事件。题中涉及对文件的操作,读人顺序文件以顺序的方式打开,用 Input#语句读取数据,另外需要注意的是对文件
16、操作完后,一定要关闭文件。 根据题意要求将一个文本框控件和两个命令按钮,其中文本框的名称为 Namel、MultiLine 属性为 True、滚动属性为 2 命令按钮的名称分别为 Commandl 和 Command2、Caption 的属性分别为“读取”和“计算保存”。在“工程”窗口中单击右键在弹出的快捷菜单中选择“添加”“添加模块”,然后在弹出对话框的“现存”选项卡中选择“modebas”,单击“确定”按钮即添加成功。模块 modebas 中的代码如下: Function writeData(total As Long) Open AppPath&“outtxt“For Output As
17、#1 Write#1,total Close#1 End Function 窗体中补充后的代码如下: Dim a(50)As Long全局变量 Dim str(50)As String全局变量 Dim total As Long Dim n As Integer Private Sub Commandl Click() total=0 n=0 TextlText=“ Open AppPath&“intxt“For Input As#1 打开“intxt“文件 Dim i As Integer Dim temp As Integer For i=0 To 49 Input#1,temp a(i)
18、=temp按顺序读人到数组中 Next i For i=0 To 49 If a(i)=500 Then total=total+a(i) 当符合条件时进行相加 n=n+1 当符合条件是则 n 增 l End If str(i)=a(i) Textl Text =Textl Text +str(i)+vbCrLf将数组中的 50 个数放人 Text 中显示 Next i total=totaln Close#1 End Sub Private Sub Command2 Click() TextlText=total writeData(total)将结果保存到 outtxt End Sub 单击 )解析: