VB机试模拟试卷4(题后含答案及解析)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VB机试模拟试卷4(题后含答案及解析)
题型有:1. 基本操作题 2. 简单应用题 3. 综合应用题
基本操作题(30分)
1.注意:下面出现的“考生文件夹”均为c:\wexam\25160001。

请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码)。

(1)在名称为Form1的窗体上建立一个名称为Text1的文本框,一个名称为Cmd1,标题为“输出”的命令按钮,如图4-1所示。

要求程序运行后,在文本框输入几个字符,单击“输出”按钮,则在窗体上显示文本框中的文字。

注意:在程序中不能使用任何变量。

保存时必须存放在考生文件夹下,窗体文件名为sjt1.frm,工程文件名为sjt1.vbp。

(2)在名称为Form1的窗体上建立两个名称分别为Cmd1和Cmd2,标题为“按钮一”和“按钮二”的命令按钮,如图4-2所示。

要求程序运行后,如果单击“按钮一”,则把“按钮二”移到“按钮一”上,使两个按钮重合,如图4-3所示。

注意:在程序中不得使用任何变量(必须通过属性设置来移动控件)。

保存时必须存放在考生文件夹下,窗体文件名为sjt2.frm,工程文件名为sjt2.vbp
正确答案:(1)在窗体上建立好控件后,先设置控件属性,再编写事件过程。

通过命令按钮的Caption属性来设置其标题,单击命令按钮触发Click事件;文本框显示内容是用Text属性。

文本框中的内容通过其Text属性得到,在命令按钮的Click事件中利用Print方法将文本框中的内容输出,完成题目要求。

解题步骤:第一步:建立界面并设置控件属性。

程序中用到的控件及其属性见表4-1。

第二步:编写程序代码。

参考代码:Private Sub Cmd1_Click( ) Cls Print Text1.Text End Sub 第三步:调试并运行程序。

第四步:按题目要求存盘。

(2)在窗体上建立好控件后,先设置控件的属性,再编写事件过程。

命令按钮的Caption属性用来设置其标题,单击命令按钮触发Click 事件,本题考查的是按钮的摆放位置的设置,涉及到对象的Left和Top属性。

Left表示控件与所在窗体的左边之间的距离,Top表示控件与所在窗体的顶边之间的距离。

让两个按钮位置重合只需将两个按钮的Left和Top设置相同即可。

解题步骤:第一步:建立界面并设置控件属性。

程序中用到的控件及其属性见表4-2。

第二步:编写程序代码。

参考代码:Private Sub Cmd1_Click( ) Cmd2.Left = Cmd1.Left Cmd2.Top = Cmd1.Top End Sub 第三步:调试并运行程序。

第四步:按题目要求存盘。

简单应用题(40分)
2.注意:下面出现的“考生文件夹”均为c:\wexam\25160001。

(1)在窗体上建立一个名称为Text1的文本框,然后建立两个主菜单,其标题分别为“商品类别”和“帮助”,名称分别为vbMenu和vbHelp,其中“商品类别”菜单包括“百货”、“食品”和“家电”三个子菜单,名称分别为vbMenu1、vbMenu2和vbMenu3。

程序运行后,如果在“商品类别”的下拉菜单中选择“百货”,则
在文本框内显示“大类核算”;如果选择“食品”,则在文本框内显示“中类核算”;如果选择“家电”,则在文本框内显示“小类核算”。

程序中不能使用任何变量,直接显示字符串。

程序运行界面如图6-3所示。

注意:保存时必须存放在考生文件夹下,窗体文件名为sjt3.frm,工程文件名为sjt3.vbp。

(2)在考生文件夹中有文件sjt4.vbp及其窗体文件sjt4.frm,该程序是不完整的,请在有? 号的地方填入正确内容,然后删除? 及所有注释符(即,号),但不能修改其他部分。

存盘时不得改变文件夹和文件名。

本题描述如下:窗体上有一个名称为Text1的文本框:两个复选框,名称分别为Ch1和Ch2,标题分别为“英语班”和“计算机班”。

要求程序运行后,如果只选中Ch1,单击窗体,则在文本框中显示“报名参加英语班”;如果只选中Ch2,然后单击窗体,则在文本框中显示“报名参加计算机班”:如果同时选中Ch1和Ch2,单击窗体,则在文本框中显示“报名参加英语班和计算机班”;如果Ch1和Ch2都不选取,在单击窗体后,则在文本框中什么都不显示。

程序运行界面如图6-4所示
正确答案:(1)在窗体上建立好控件后,先设置控件属性,再编写事件过程。

在Visual Basic中,菜单也被看作控件,具有属性和事件。

菜单的建立在菜单编辑器中完成,菜单的级数通过内缩符号来表示,第一级菜单没有内缩符号,第二级菜单的内缩符号为1:文本框的内容由Text属性设置。

解题步骤:第一步:建立界面并设置控件属性。

程序中用到的控件及其属性见表6-3。

第二步:编写程序代码。

参考代码:Private Sub vbMenu1_Click( ) Text1.Text=“大类核算”End Sub Private Sub vbMenu2_Click( ) Text1.Text=“中类核算”End Sub Private Sub vbMenu3_Click( ) Text1.Text=“小类核算”End Sub 第三步:调试并运行程序。

第四步:按题目要求存盘。

(2)在窗体上建立好控件后,先设置控件属性,再编写事件过程。

在Visual Basic中,复选按钮的标题由Caption属性设置,Value属性用来表示复选框的状态,复选框的Value属性有0、1或2三种取值,其作用为:0:表示未选中;1:表示选中该复选框;2:表示该复选框被禁止(灰色)。

解题步骤:第一步:建立界面并设置控件属性。

程序中用到的控件及其属性见表6-4。

第二步:编写程序代码。

程序提供的代码:Option Explicit Private Sub Form Click( ) Text1.Text = ““‘If Ch1.Value = ? Then Text1.TeXt = Text1.Text + “英语班”End If If Ch2.Value Then ‘If Text1.Text <>““Then Text1.Text = ? + “和”Text1.Text = Text1.Text + “计算机班”End If If Text1.Text <>““ Then Text1.Text = “报名参加”+ Text1.Text End If End Sub 参考代码:Option Explicit Private Sub Form Click( ) Text1.Text = ““If Ch1.Value = 1 ThenText1.Text = Text1.Text + “英语班”End If If Ch2.Value ThenIf Text1.Text <>““Then Text1.Text = Text1.Text + “和”Text1.Text = Text1.Text + “计算机班”End If If Textl.Text <>““ThenText1.Text = “报名参加” + Text1.TextEnd If End Sub 第三步:调试并运行程序。

第四步:按题目要求存盘。

综合应用题(30分)
3.下面出现的“考生文件夹”均为c:\wexam\25160001。

在考生文件夹
中有工程文件sjt5.vbp及其窗体文件sjt5.frm,该程序是不完整的,请在有?号的地方填入正确内容,然后删除?及所有注释符(即,号)但不能修改其他部分。

存盘时不得改变文件名和文件夹。

本题描述如下:在名称为Form1的窗体上有一个文本框,名称为Text1,MultiLine属性为True,ScrollBars属性为2,两个命令按钮,名称分别为Cmd1和Cmd2,标题分别为“读入数据”和“排序显示保存”,如图5-6所示。

程序运行后,如果单击“读入数据”按钮,则读入in.txt文件中的100个整数,放入一个数组中(数组下界为1):如果单击“排序显示保存”按钮,则对这100个整数按从大到小进行排序,把排序后的全部数据在文本框Text1中显示出来,然后存入考生文件夹的out.txt文件中。

(考生文件夹下的标准模块model.bas中的putdata过程可以把指定个数的数组元素存入out.txt文件。

)注意:文件必须存放在考生文件夹下,窗体文件名为sjt5.frm,工程文件名sjt5.vbp,排序结果存入out.txt文件中,否则没有成绩。

正确答案:在窗体上建立好控件后,先设置控件属性,再编写事件过程。

文本框显示的内容由Text属性设置:按钮的标题由Caption属性设置,单击命令按钮触发Click事件:在本题中涉及到文件的操作,读入顺序文件以顺序的方式打开,用Input#语句读取数据,另外需要注意的是对文件操作完后,一定要关闭文件。

排序的方法有多种,如冒泡排序、选择排序等,本题用的是选择排序法。

选择法排序的思想是:每一次循环从数组的n-i+1(I=1,2,…,n-1)个元素中选择一个值最小的元素与你n-i+1个元素的前面那个元素交换位置,即与整个数组的第i个位置的元素交换位置。

如此下去,直到i=n-1时,排序结束。

解题步骤:第一步:建立界面并设置控件的属性。

程序中用到的控件及其属性见表5-5。

第二步:编写程序代码。

程序提供的代码。

model.bas代码:Sub putdata(a( ) As Integer,n As Integer) Dim sFile As String sFile =“\out.txt”Open App.Path & sFite For Output As #1 For i= 1 To nPrint #1,a(i) ;Next Close #1 End Sub 窗体代码:Option Explicit Dim i(1 To 100) As Integer Private Sub Cmd1_ Click( ) Dim j As Integer Open App.Path&”\in.txt”For Input As #1 ‘ For j = ? To 100 Input #1,i(j) Text1.Text = Text1.Text & i(j) & Space(5) NextClose #1 End Sub Private Sub Cmd2_Click( )Dim j As Integer Dim k As Integer Dim temp As Integer Dim flag As Boolean For j = 1 To 100 ‘flag = ? For k = 1 To 100 - jIf i(k) >i(k + 1) Then temp = i (k) i(k) = i(k + 1) i(k + 1) = temp flag = TrueEnd IfIQ If Not flag ThenExit For End If Next Text1.Text = ““ For j = 1 To 100 Text1.Text = Text1.Text & i(j) & Space(5) Next putdata i, 100 End Sub 参考代码:Option Explicit Dim i(1 To 100) As Integer Private Sub Cmd1_Click( ) Dim j As Integer Open App. Path& “\in.txt” For Input As #1 For j = 1 To 100 Input #1, i(j) Text1.Text = Text1.Text & i(j) & Space(5) Next Close #1 End Sub Private Sub Cmd2_Click( ) Dim j As Integer Dim k As Integer Dim temp As Integer Dim flag As Boolean For j = 1 To 100 flag = False For k = 1 To 100 - j If i(k) <i(k + 1) Then temp = i (k) i(k) = i(k + 1) i(k + 1) = temp flag = True End If Next If Not flag Then Exit For End IfNextText1.Text = ““For j = 1 To 100 Text1.Text = Text1.Text & i(j) & Space(5) Next putdata i,100 End Sub 第三
步:调试并运行程序。

第四步:按题目要求存盘。

相关文档
最新文档