1、国家二级 VB机试(上机操作)模拟试卷 291及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请根据以下各小题的要求设计 Visual Basic应用程序(包括界面和代码)。(1)在名称为 Form1的窗体上画一个文本框,名称为 Text1,内容为“VB 程序设计”;再画两个命令按钮,其名称分别为 Command1和Command2,标题分别为“扩大”和“缩小”,如图 393所示,编写适当的事件过程。程序运行后,每单击 Command1命令按钮一次,文本框中文本的字体扩大 12 倍;每单击 Command2单选按钮一次,文本框中文本的字体缩小
2、12 倍。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1vbp,窗体文件名为 sjjt1frm。 (2)在名称为 Form1的窗体上画一个列表框,其名称为 List1,通过属性窗口向列表框中输入 9个项目,分别为 10、20、30、40、50、60、70、80、90;画一个文本框,其名称为Text1,初始内容为空白;再画一个水平滚动条,其名称为 HScroll1,Min 属性和 Max属性分别为 0和100,如图 394(a)所示,编写适当的事件过程。程序运行后,如果单击列表框中的某个项目,则在文本框中显示该项目内容,并把滚动条的滚动框移到相应的位置,如图 394(b)所示。要求:
3、不得使用任何变量。 (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)在考生文件夹下有一个工程文件 sjt3vbp,相应的窗体文件为 sjt3frm。在名称为 Form1的窗体上有一个名称为 Text1的文本框和名称为 Command1、标题为“确定”的命令按钮,一个名称为 List1的列表框和两个名称分别为 Option1和 Option2、标题分别为“添加”和“删除”的单选按钮,如图 395(a)所示。程序运行后,如果选择单选按钮 Option1并在文本框中输入一个字符串,然后单击“确定”命令按钮,则把文本框中的字符串添加到列表框中,并清除文本框,如图 395(b)
4、所示;如果选择列表框中的一项和单选按钮 Option2,并单击“确定”命令按钮,则删除列表框中所选择的项目,如图 395(c)所示;如果不选择列表框中的项目,或者没有在文本框中输入字符串,则单击“确定”命令按钮后,将显示一个信息框“未输入或未选择项目”,如图 395(d)所示。该程序不完整,请把它补充完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 (2)在考生文件夹下有一个工程文件sjt4vbp,相应的窗体文件为 sjt4frm。在窗体上有一个命令按钮,其名称为 Command1,标题为“计算”
5、。程序运行后,如果单击命令按钮,程序将根据下面的公式计算 的值:4=1-13+15-17+,所提供的窗体文件已给出了命令按钮的事件过程,程序运行结果如图 396所示。该程序不完整,请把它补充完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 (分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个工程文件 sjt5vbp,相应的窗体文件为 sjt5frm。窗体外观如图 35(a)所示。三个命令按钮的名称分别为 Command1、Command2 和 Command3,
6、标题分别为“读取数据”、“首字母大写”和“存盘”。程序运行后,如果单击“读取数据”命令按钮,则读取考生文件夹下 in5txt 中的全部文本(文本中的单词与单词之间或标点符号与单词之间均用一个空格分开),并在文本框中显示出来。文本内容如下:TuckeddeepwithinthepromisesandpoliciesofhisStateoPdaeUnionaddress,PresidentBushutteredthreewordsthatspeakvolumesaboutWashingtonsparalysisinaddressingtheplightoflhefortymillionAmeric
7、answholackhealthinsuranceInbetweenhisdiscourseonMedicareandhissupportforalow-incomehealthcaretaxcredit,Bushcalledforsomethingcalledassociationhealthplans如果单击“首字母大写”命令按钮,则将文本框中每个单词的第一个字母变为大写字母(如果原来已是大写字母则不改变),并在文本框中显示出来,如图 397(b)所示;如果单击“存盘”命令按钮,则把文本框中的内容(首字母大写后)保存到考生文件夹下的文件 out5txt 中。窗体文件中已给出了部分程序,请把
8、它补充完整,使其实现上述功能。 (分数:2.00)_国家二级 VB机试(上机操作)模拟试卷 291答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请根据以下各小题的要求设计 Visual Basic应用程序(包括界面和代码)。(1)在名称为 Form1的窗体上画一个文本框,名称为 Text1,内容为“VB 程序设计”;再画两个命令按钮,其名称分别为 Command1和Command2,标题分别为“扩大”和“缩小”,如图 393所示,编写适当的事件过程。程序运行后,每单击 Command1命令按钮一次,文本框中文本的字体扩大 12 倍;每单击 Co
9、mmand2单选按钮一次,文本框中文本的字体缩小 12 倍。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1vbp,窗体文件名为 sjjt1frm。 (2)在名称为 Form1的窗体上画一个列表框,其名称为 List1,通过属性窗口向列表框中输入 9个项目,分别为 10、20、30、40、50、60、70、80、90;画一个文本框,其名称为Text1,初始内容为空白;再画一个水平滚动条,其名称为 HScroll1,Min 属性和 Max属性分别为 0和100,如图 394(a)所示,编写适当的事件过程。程序运行后,如果单击列表框中的某个项目,则在文本框中显示该项目内容,并把滚动条的滚
10、动框移到相应的位置,如图 394(b)所示。要求:不得使用任何变量。 (分数:2.00)_正确答案:(正确答案:第 1小题 步骤 1:新建一个“标准 EXE”工程,在窗体 Form1中加入一个文本框和两个命令按佣,其相关属件设置如表 458所示。 步骤 2:打开代码编辑窗口,输入如下代码。 参考代码: Private Sub Command1_Click() Text1FontSize=Text1FontSize*12 End Sub Private Sub Command2_CliCk() Text1FontSize=Text1FontSize12 End Sub 步骤 3:按要求将文件保存
11、至考生文件夹中。 第 2小题 步骤 1:新建一个“标准 EXE”工程,在窗体上画一个列表框、一个文本框和一个水平滚动条,按表 459设置其相关属性。 )解析:解析:第 1小题:要实现题目要求的功能,只需在两个命令按钮的 Click事件过程中,分别设置文本框的 FontSize属性为指定值。 第 2小题:列表框的 Text属性用于返回列表框中选择的项目的内容,返回值总与列表框的 List(ListIndex)属性的返回值相同。本题需要在列表框的属性窗口中输入列表框中的项目,然后在列表框的单击事件中将选定项赋值给文本框和滚动条的 Value属性。二、简单应用题(总题数:1,分数:2.00)2.(1
12、)在考生文件夹下有一个工程文件 sjt3vbp,相应的窗体文件为 sjt3frm。在名称为 Form1的窗体上有一个名称为 Text1的文本框和名称为 Command1、标题为“确定”的命令按钮,一个名称为 List1的列表框和两个名称分别为 Option1和 Option2、标题分别为“添加”和“删除”的单选按钮,如图 395(a)所示。程序运行后,如果选择单选按钮 Option1并在文本框中输入一个字符串,然后单击“确定”命令按钮,则把文本框中的字符串添加到列表框中,并清除文本框,如图 395(b)所示;如果选择列表框中的一项和单选按钮 Option2,并单击“确定”命令按钮,则删除列表框
13、中所选择的项目,如图 395(c)所示;如果不选择列表框中的项目,或者没有在文本框中输入字符串,则单击“确定”命令按钮后,将显示一个信息框“未输入或未选择项目”,如图 395(d)所示。该程序不完整,请把它补充完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 (2)在考生文件夹下有一个工程文件sjt4vbp,相应的窗体文件为 sjt4frm。在窗体上有一个命令按钮,其名称为 Command1,标题为“计算”。程序运行后,如果单击命令按钮,程序将根据下面的公式计算 的值:4=1-13+15-17+,
14、所提供的窗体文件已给出了命令按钮的事件过程,程序运行结果如图 396所示。该程序不完整,请把它补充完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 (分数:2.00)_正确答案:(正确答案:第 1小题 步骤 1:打开考生文件夹中的本题工程文件 sjt3vbp,在代码编辑窗口中,去掉程序中的注释符“”,将问号“?”改为正确的内容。 参考代码: List1AddItem Text1Text If Form1Option2Value=True And List1ListIndex=0Then List1
15、RemoveItem List1ListIndex 步骤 2:按要求将文件保存至考生文件夹中。 第 2小题 步骤 1:打开考生文件夹中的本题工程文件 sjt4vbp,在代码编辑窗口中,去掉程序中的注释符“”,将问号“?”改为正确的内容。参考代码: Result=Result+Sign*1i Sign=-Sign Text1Text=Result*4 步骤 2:按要求将文件保存至考生文件夹中。)解析:解析:第 1小题:单击列表框中的某个项目,将触发其 Click事件。要实现单击列表框中的某一项,该项就从列表中消失的功能,只需在 Click事件过程中编写删除项目的语句即可。列表框的 ListInd
16、ex属性可返回当前选择的项目的索引号,因此删除选中项目的语句为:List1RemoveItem List1ListIndex。 第 2小题:本题是一个数列求累加和的问题。这个数列的特点是,每一项的分子都是 1,分母都是前一项分母加 2。符号都是前一项符号的相反数。凶此,这个数列累加求和问题使用循环来完成,在循环中令分母加 2,符号取反即得到下一项。循环结束后需要将累加和乘 4才能得到所求的圆周率的值。三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个工程文件 sjt5vbp,相应的窗体文件为 sjt5frm。窗体外观如图 35(a)所示。三个命令按钮的名称分别为 Comman
17、d1、Command2 和 Command3,标题分别为“读取数据”、“首字母大写”和“存盘”。程序运行后,如果单击“读取数据”命令按钮,则读取考生文件夹下 in5txt 中的全部文本(文本中的单词与单词之间或标点符号与单词之间均用一个空格分开),并在文本框中显示出来。文本内容如下:TuckeddeepwithinthepromisesandpoliciesofhisStateoPdaeUnionaddress,PresidentBushutteredthreewordsthatspeakvolumesaboutWashingtonsparalysisinaddressingtheplight
18、oflhefortymillionAmericanswholackhealthinsuranceInbetweenhisdiscourseonMedicareandhissupportforalow-incomehealthcaretaxcredit,Bushcalledforsomethingcalledassociationhealthplans如果单击“首字母大写”命令按钮,则将文本框中每个单词的第一个字母变为大写字母(如果原来已是大写字母则不改变),并在文本框中显示出来,如图 397(b)所示;如果单击“存盘”命令按钮,则把文本框中的内容(首字母大写后)保存到考生文件夹下的文件 out
19、5txt 中。窗体文件中已给出了部分程序,请把它补充完整,使其实现上述功能。 (分数:2.00)_正确答案:(正确答案:步骤 1:打开考生文件夹中的工程文件 sjt5vbp,在代码编辑窗口中,去掉程序中的注释符“”,将问号“?”改为正确的内容。 参考代码: ch=Mid(oldSen,i,1) newSen=newSen&ch write#1,Text1Text 步骤 2:编写“读取数据”命令按钮的单击事件。 参考代码:Private Sub Command1_CliCk() Dim s As String Open“in5txt“For Input As1 Line Input#1,s Ci
20、ose#1 Text1Text=S End Sub 步骤 3:按F5键运行程序,先单击“读取数据”按钮,接着单击“首字母大写”按钮,最后单击“存盘”按钮。 步骤 4:按要求将文件保存至考生文件夹中。)解析:解析:分析题目可知,本题中“读取数据”命令按钮中首先使用 For Input方式打开文件,然后通过 Line Input#语句将打开文件中的数据读出到变量 s中并且赋给文本框。 在“首字母大写”按钮的单击事件中,首先依次取出文本框中的每一个字符,然后判断这个字符的上一个字符是否是空格,如果是空格则将该字符使用 UCase函数转换为大写;判断完毕后无论是否转换均将其连接到新的字符串中,同时令这个字符成为新的“上一个字符”。这样,循环结束后每个单词的首字母就转换成了大写字母。 在“存盘”按钮的单击事件中,首先以 Output方式打开文件,然后利用 Write#语句将文本框中的内容写回到文件中,最后关闭文件。