全国计算机等级考试二级VB上机题库以及解析.docx
《全国计算机等级考试二级VB上机题库以及解析.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级VB上机题库以及解析.docx(14页珍藏版)》请在冰豆网上搜索。
全国计算机等级考试二级VB上机题库以及解析
全国计算机等级考试二级VB上机题库
(一)
图1图2
T1.width=T1.width+1400
T1.Height=T1.Height+400
T1.fontsize=T1.fontsize*3
最后单击保存按钮,工程命名为sjt1.vbp,窗体命名为sjt1.frm。
Text1.text=LCase(Text1.text)
Text2.text=UCase(Text1.text)
一、简单应用题(2小题,每小题20分,共计40分)
1.在考生目录下有一个工程文件sjt3.vbp,相应的窗体文件为sjt3.frm。
包含所有控件和部分程序,如图所示。
要求:
1)利用属性窗口向列表框添加四个项目:
VisualBasic,TurboC,C++,Java;
2)请编写适当的程序完成以下功能:
当选择列表框中的一项和单选按钮Option1,然后单击“确定”命令按钮,则文本框中显示“XXX笔试”;当选择列表框中的一项和单选按钮Option2,然后单击“确定”命令按钮,则文本框中的一项和单选按钮Option2,然后单击“确定”命令按钮,则文本框中显示“XXX上机”。
其中“XXX”是在列表框中所选择的项目。
IfOption1.Value=Truethen
Text1.Text=List1.List(List1.ListIndex)+Option1.Caption
EndIf
IfOption2.Value=Truethen
Text1.Text=List1.List(List1.ListIndex)+Option2.Caption
EndIf
最后单击保存按钮。
2.在考生目录下有一个工程文件sjt4.vbp,相应的窗体文件为sjt4.frm。
在窗体上已经有一个命令按钮。
其名称为Command1,标题为“计算并输出”;程序运行后,如果单击命令按钮,程序将计算500以内两个数之间(包括开头和结尾的数)所有连续数的和为1250的正整数,并在窗体上显示出来,这样的数有多组,程序输出每组开头和结尾的正整数,并用“~”连接起来,如图所示,这个程序不完整,请把它补充完整。
要求:
去掉程序中的注释符,把程序中的?
该为正确的内容,使其实现上述功能,但不得修改程序中的其他部分。
最后把修改的文件按原文件存盘。
PrivateSubCommand1_Click()
DimiAsInteger,jAsInteger,iSumAsInteger
Print"连续和为1250的正整数是:
"
Fori=1To500
'isum=0赋初值
Forj=iTo500
'iSum=j+iSum进行累加
IfiSum>=1250ThenExitFor
Next
'IfiSum=1250Then和是否为1250
Printi;"~";j
EndIf
Next
EndSub
答案为:
1)2)j+iSum3)1250
二、综合应用题(1小题,计40分)
在窗体上画一个文本框,名称为Text1,初始内容为空白,并设置多行显示格式;然后再画两个命令按钮,其名称分别为Command1和Command2,标题分别为“显示”和“保存”,如图所示,编写适当的事件过程。
程序运行后,如果单击“显示”命令按钮,则读取考生目录下的in5.txt文件,并在文本框中显示出来,该文件是一种用随机存取方式建立的文件,共有5个记录,要求按记录号顺序显示全部记录,每个记录一行;如果单击“保存”命令按钮,则把所有记录保存到考生目录下的顺序文件 out5.txt中。
随机文件in5.txt中的每个记录包括3个字段,分别为姓名、性别和年龄,其名称和长度分别为:
Name字符串8
Sex字符串4
AgeInteger
其类型定义为:
PrivateTypeStudInfo
NameAsString*8
SexAsString*4
AgeAsInteger
EndType
要求:
1)文件out5.txt以顺序存取方式建立和保存。
2)
存盘时必须放在考生目录下,工程为sjt5.vbp,窗体文件名为sjt5.frm。
PrivateTypeStudInfo
Nameasstring*8
Sexasstring*4
Ageasinteger
EndType
Dimpersasstudinfo
Dimrecmumasinteger
显示按钮脚本:
Privatesubcommand1_click()
Openapp.path+”\in5.txt”forrandomas#1Len=len(pers)
recnum=lof
(1)/len(pers)
Cls
Fori=1torecnum
Get#1,,pers
Text1.text=text1.text+pers.name+pers.sex+str(pers.age)+vbcrlf
Nexti
Close1
Endsub
保存按钮脚本:
Privatesubcommand2_click()
Openapp.path+”\out5.txt”foroutputas#1
Print#1,text1.text
Close#1
Endsub
(1)在考生文件夹下有一个工程文件sjt3.vbp,相应的窗体文件为sjt3.frm。
在名称为Form1的窗体上有一个名称为Text1的文本框和名称为Command1、标题为"确定"的命令按钮,一个名称为List1的列表框和两个名称分别为Option1和Option2、标题分别为"添加"和"删除"的单选按钮,如图1所示。
程序运行后,如果选择单选按钮Option1并在文本框中输入一个字符串,然后单击"确定"命令按钮,则把文本框中的字符串添加到列表框中,并清除文本框,如图2所示;如果选择列表框中的一项和单选按钮Option2,并单击"确定"命令按钮,则删除列表框中所选择的项目,如图3所示;如果不选择列表框中的项目,或者没有在文本框中输入字符串,则单击"确定"命令按钮后,将显示一个信息框"未输入或未选择项目",如图4所示。
该程序不完整,请把它补充完整。
要求:
去掉程序中的注释符,把程序中的?
改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。
最后用原来的文件名保存工程文件和窗体文件。
**********************************************************************
(2)在考生文件夹下有一个工程文件sjt4.vbp,相应的窗体文件为sjt4.frm。
在窗体上有一个命令按钮,其名称为Command1,标题为"计算"。
程序运行后,如果单击命令按钮,程序将根据下面的公式计算π的值:
π/4=1-1/3+1/5-1/7+......所提供的窗体文件已给出了命令按钮的事件过程,程序运行结果如图所示。
该程序不完整,请把它补充完整。
要求:
去掉程序中的注释符,把程序中的?
改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。
最后用原来的文件名保存工程文件和窗体文件。
第一小题:
该题考查考生对ListBox控件的使用。
列表框的AddItem方法
用来在列表框中插入一行文本,其语法为:
列表框名.AddItem字符串[,索引值]
如果省略"索引值",则字符串被添加到列表框的尾部;使用"索引值"可以将字符串插入列表框中的指定位置。
"索引值"从0开始,到列表项总数-1止。
列表框的RemoveItem方法
用来删除列表框中的指定项目,其语法为:
列表框名.RemoveItem索引值
列表框的ListIndex属性
用来设置或返回列表框中当前选中的列表项。
第二小题:
该题考查了Do-Loop循环结构语句和公式计算的算法实现,相关程序如下:
PrivateSubCommand1_Click()
DimResultAsDouble
DimSignAsInteger
DimiAsInteger
Result=0
Sign=1
i=1
Do
Result=Result+Sign/i
i=i+2
Sign=-Sign
LoopWhile1/i>=0.0001
Text1.Text=Result*4
EndSub
3.综合应用(1小题,计30分)
注意:
下面出现的"考生文件夹"均为%USER%
在考生文件夹下有一个工程文件sjt5.vbp,相应的窗体文件为sjt5.frm。
窗体外观如图1所示。
三个命令按钮的名称分别为Command1、Command2和Command3,标题分别为"读取数据"、"首字母大写"和"存盘"。
程序运行后,如果单击"读取数据"命令按钮,则读取考生文件夹下in5.txt中的全部文本(文本中的单词与单词之间或标点符号与单词之间均用一个空格分开),并在文本框中显示出来,如图2所示;如果单击"首字母大写"命令按钮,则将文本框中每个单词的第一个字母变为大写字母(如果原来已是大写字母则不改变),并在文本框中显示出来,如图3所示;如果单击"存盘"命令按钮,则把文本框中的内容(首字母大写后)保存到考生文件夹下的文件out5.txt中。
窗体文件中已给出了部分程序,请把它补充完整,使其实现上述功能。
要求:
1)编写"读取数据"命令按钮的Click事件过程。
2)去掉"首字母大写"命令按钮和"存盘"命令按钮事件过程中的注释符,把程序中的?
改为正确的内容,使其能正确运行。
3)用原来的文件名保存工程文件和窗体文件。
本题主要考查了文件的操作,文件中字符串的处理方法。
主要代码如下:
DimsAsString
PrivateSubCommand1_Click()
Open"in5.txt"ForInputAs#1
s=Input$(LOF
(1),1)
Close#1
Text1.Text=s
EndSub
PrivateSubCommand2_Click()
DimoldSenAsString
DimnewSenAsString
DimchAsString
DimlastChAsString
oldSen=Text1.Text
strlen=Len(oldSen)
lastCh=Left(oldSen,1)
Fori=1Tostrlen
ch=Mid(Text1.Text,i,1)
IflastCh=""Then
ch=UCase(ch)
EndIf
newSen=newSen&ch
lastCh=ch
Nexti
Text1.Text=newSen
EndSub
PrivateSubCommand3_Click()
Open"out5.txt"ForOutputAs#1
Write#1,Text1.Text
Close#1
EndSub
答案:
Dima(10)AsInteger
Dimb(10)AsInteger
Dimc(10)AsInteger
PrivateSubCommand1_Click()
OpenApp.Path&"\dataA.txt"ForInputAs#1
OpenApp.Path&"\dataB.txt"ForInputAs#2
Fori=0To9
Input#1,a(i)
Input#2,b(i)
Next
Close#1,#2
EndSub
PrivateSubfind(x()AsInteger,tAsControl)
DimiAsInteger,maxAsInteger
max=x
(1)
Fori=2To10
Ifmax Nexti
t.Text=max
EndSub
PrivateSubCommand2_Click()
DimiAsInteger
Fori=1To10
c(i)=a(i)+b(i)
Nexti
OpenApp.Path&"\out51.txt"ForOutputAs#1
Fori=0To9
Print#1,c(i)
Next
Close#1
EndSub
PrivateSubCommand3_Click()
Callfind(a,Text1)
Callfind(c,Text2)
OpenApp.Path&"\out52.txt"ForOutputAs#1
Print#1,Text1.Text,Text2.Text
Close#1
EndSub
编写适当的事件过程,使程序运行后,可以使图像框闪烁,其闪烁速度可以通过滚动条来调节。
提示:
图像框的闪烁可以通过图像框交替地显示和隐藏来实现。
要求:
程序中不得使用变量,每个事件过程中只能写一条语句。
注意:
存盘时必须存放在考生文件夹中,工程文件名为“sit2.vbp”,窗体文件名为“sjt2.frm”。
解答:
PrivateSubHScroll1_Scroll()
Timer1.Interval=HScroll1.Value
EndSub
PrivateSubTimer1_Timer()
Image1.Visible=NotImage1.Visible
EndSub
题目:
在名为Form1的窗体上绘制两个图像框,名称分别为Pic1和Pic2,宽度和高度均为1500,通过属性窗口把图像文件tp1.jpg放入Pic1中,把图像文件tp2.jpg放入Pic2中;再绘制一个名为Cmd1的命令按钮,标题为"图片交换",如图1-4所示。
编写适当的事件过程,使得在运行时,如果单击窗体,则交换两个图像框中的图像。
注意不允许使用第三个图像框。
PrivateSubForm_Click()
Dimpic AsObject
Setpic=Image1.Picture
Image1.Picture=Image2.Picture
Image2.Picture=pic
EndSub