VB基础模拟演练选考题(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B 组 选考题组
1.如下图所示,该流程图所表示的算法违背了算法的有穷性特征,下列修改方法中,可以改正该
错误的是( )
A.将①处改为 i←0
B.将②处改为 s≥0?
C.将③处改为 i←i -2
D.将④处改为 s←s -i
2.有一数列1,2,3,5,8,13,……,从第3项起,每项等于它相邻的前2项之和。
求在该数列中第
一个超过1000的数是第几项。
解决
此问题的部分算法流程图如图所示:
图中空白处理框①和②处应填入的
是( )
A.① ← ② ←
B.① ← ② ←
C.① ← ② ←
D.① ← ② ←
3.随机产生10个[1,99]中的整数,依次存储到数组变量a(1)~a(10)中。
实现此功能的部分算法流程图如图所示,图中空白处理框①和②处应填入的是( )
A.① ← ② ←
B.① ← ② ←
C.① ← ② ←
D.① ← ② ←
4.在Visual Basic 窗体中,当前对象的属性窗口如下图所示,下列说法正确的是
( )
A.该对象属于标签类
B.该对象属于文本框类
C.当前该对象的Caption属性值是
“转换”
D.当前该对象的Font属性值是“仿
宋体”
5.(2015浙江学考导引)小李在设计VB程序时所使用复选框对象的属性窗口如图所示,他想编制该复选框单击事件的处理过程,则该事件处理过程名是( )
A.CheckBox_Click()
B.加粗_Click()
C.Check1_Click()
D.复选框_Click()
6.一个VB工程的部分设计界面如图所示。
下列说法不正确的是( )
①工程文件名是“工程1.vbp”②该工程只有1个窗体
③窗体文件名是“Form.frm”④窗体名称是“寻找水仙花数”
A.①②
B.②③
C.①③
D.③④
7.(2016杭州二中第一学期期末)VB语句List1.addItem d(i)的作用是把数组d 的数据添加到列表框对象List1中。
该语句中的“addItem”是( )
A.属性名
B.属性值
C.方法
D.事件
8.运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
Private Sub Command1_Click()
Dim a As Integer,b As Integer
a=10 ‘①
b=20 ‘②
Text1.Text=“a+b=”+Val a+b
‘③
End Sub ‘④
发生“类型不匹配”错误时所执行的语句是( )
A.①
B.②
C.③
D.④
9.(2016嘉兴3月选考模拟)如图所示程序段中,a(5)不是数组元素的是( )
A.①
B.②
C.③
D.④
10.(2015宁波期末)编写Visual Basic 程序,求n!(说明:n!=1×2×3×…×n 。
(1)这个程序主要采用的算法结构是 ①分支结构 ②顺序结构 ③循环结构)。
(2)程序运行,在Text1中无论输入什么数,发现在Text2中输出的都是0,原
应该如何修改程序?② 把n=0改为n=1 。
(3)上述错误修改成功后,程序运行时,在Text1中输入5,按“计算”按钮,则在Text2中输出120,如下图左所示:
但是当输入10的时候,则跳出一个实时错误,提示“溢出”,如上右图所示。
产生
的阶乘,
+选考模拟加试题)有如下VB程序:
Dim i As Integer,j As Integer,k As String,n As Integer
n=3
List1.Clear
For i=1 To n
k=“”
For j=1 To i
k=k+“ ”
Next j
List1. AddItem k
Next i
该程序运行后,在列表框List1中显示的是(A )
12.(2016台温丽衢第一学期期末)【加试题】编写VB程序,功能如下:在文本框Text1里输入数学表达式(表达式的长度<=100),在列表框List1里输出所有配对括号在表达式中的位置。
如在文本框Text1里输入“12 3- 1+2 3”,运行效果如图所示。
实现上述功能的VB代码如下,在划线的地方填入合适代码,完善程序。
Private Sub Command1_Click()
Dim s As String
Dim a(1 To 100)As Integer
Dim i As Integer,top As Integer
s=Text1.Text
i=1
top=0
Do While i<=Len(s)
If Mid s,i,1 =“ ”Then
top=top+1
①
End If
If Mid s,i,1 =“ ”Then
List1.AddItem
Str a top +“ ”+Str i ②
End If
③
Loop
End Sub
程序中①划线处应填入 a(top)=i 。
程序中②划线处应填入 top=top-1 。
程序中③划线处应填入 i=i+1 。
13.(2016台州六校第一学期期末选考科目联考)【加试题】编写VB 程序,实现如下功能:在文本框Text1中输入筛选关键词“ca”,单击“筛选”按钮Command1,在列表框List1所列字符串中查找左边与“ca”相匹配的字符串,并在列表框
List2中输出(运行效果如图所示);否则,在列表框List2中显示“无筛选结果”。
实现上述功能的VB 代码如下,但加框处代码有错,请改正。
Dim a(1 To 20)As String ‘用于存储20个字符串
20个字符串分别保存赋值给数组元素a(1)、a(2)、a(3)、a(4)、…、a(19)、a(20),并在列表框List1中显示
Private Sub Form_Load()
‘代码略
End Sub
Private Sub Command1_Click()
Dim s As String,n As Integer,i As Integer
Dim flag As Boolean ‘变量flag 用于标记是否在数组a 中筛选到左边与s 匹配的字符串
List2.Clear ‘筛选时清空上次筛选结果
s=Text1.Text
n=Len(s)
flag=False
’
flag=True
End If
Next i
‘
End Sub
14.(2015浙江9月学考+选考模拟加试题)用VB编写一个字符串分行程序,功能如下:单击“分行”按钮Command1,将文本框Text1中的英文文本在列表框List1中分行显示(分行时单词不得跨行,每行字符尽可能多但不超过40个),并在标签Label1中输出总行数,运行效果如图所示。
分行算法如下:
(1)将文本框中的字符串保存到变量s中;
(2)当s中字符个数超过40时,循环执行下列①、②、③步,否则跳转到(3):
①如果第41个字符不是英文字母,则分行位置p=40;否则,向左逐个查找,直至找到第一个非英文字母,将其位置作为分行位置p;
②截取s的前p个字符,作为新增行显示在列表框List1中,同时总行数加1;
③将s中未分行部分重新赋值给变量s。
(3)将s作为新增行显示在列表框List1中,同时总行数加1。
实现上述功能的VB程序如下,请在划线处填入合适代码。
Private Sub Command1_Click( )
Dim s As String,c As String
Dim r As Integer,total As Integer,p As Integer
total=0
s=①Text1.Text
Do While Len(s)>40
r=41
c=Mid(s,r,1)
If Not c>=“a” And c<=“z” Or c>=“A” And c<=“Z” Then
p=40
Else
’从第41个字符开始向左找到第1个非英文字母,并将其位置值赋给p Do While c>=“a” And c<=“z” Or c>=“A” And c<=“Z”
r=②r-1
c=Mid(s,r,1)
Loop
p=r
End If
List1.AddItem Mid(s,1,p)
total=total+1
s=③Mid(s,p+1, Len(s)-p)
Loop
List1.AddItem s
total=total+1
Label1.Caption=“共”+ Str total +“行”
End Sub。