12-基础-浙江省2022届高中信息技术选考选择题专项训练
基础
1.(2010三校联考)9.有如下VB程序段:
m = Val(Text1.Text): n = 0
Do While m <> 0
x = m Mod 8
m = m \ 8
a(x) = a(x) + 1
If a(x) = 1 Then n = n + 1
Loop
已知数组a的各个元素初始值都为0,如果在文本框Text1中输入“2020”,执行该程序段后,变量n的值为( )
A.1 B.2 C.3 D.4
【答案】C
2.(2010浙江十校)9.有如下程序段:
x = 60: t = 2: c = 0
Do While x > 1
If x Mod t = 0 Then
c = c + 1: x = x \ t
Else
t = t + 1
End If
Loop
执行该程序段后,变量c的值是
A. 3 B. 4 C. 5 D. 9
【答案】B
3.(2010浙江五校10.有如下 VB 程序段
For i = 1 To 17
j = 1: a(j) = a(j) + 1
Do While a(j) = 3
a(j) = 0
j=j + 1
a(j) = a(j) + 1
Loop
Next i
已知数组 a 中各元素初始值均为 0,该程序执行后,数组 a 中各元素之和是
A.3 B.5 C.8 D.9
【答案】B
4.(2010浙南名校)9.有如下 VB 程序段:
s = "20210606"
c1 = 6
1
n = 0
For i = 1 To Len(s)
c = Val(Mid(s, i, 1))
If c < c1 Then n = n + 1: c1 = c
Next i
运行该程序段后,n 的值为
A.0 B.2 C.6 D.8
【答案】B
5.(2011 9+1)有如下 VB 程序段
Dim i As Integer , s As String
Dim a(1 To 10) As Integer
a(1) = 1: a(2) = 2
For i = 3 To 10
a(i) = a(i - 1) * a(i - 2)
s = s + a(i)
Next i
Text1.Text = s + Str(a(i))
运行程序,单击命令按钮 Command1 后,出现的错误提示为
A. 下标越界 B. 子程序或函数未定义 C. 溢出 D. 类型不匹配
【答案】D
6.(2011杭州及周边重点学校期中联考)有如下程序段,在Text1 中输入1001011,Text2中输出的结果为 ( )
Private Sub Command1_Click()
Dim s As String ,i As Integer, d As Integer
d=0
s = Text1.Text
For i = Len(s) To 1 Step -1
d = (d \ 2 + Val(Mid(s, i, 1)) * 2 ^ (Len(s) - 1))
Next i
Text2.Text = Str(100-d)
End Sub
A.75 B.25 C.-25 D.50
【答案】B
7.(2011杭州及周边重点学校期中联考)使用 Nilakantha 级数可用于计算 Pi(π) 的无穷级数,它的计算机结果比莱布尼茨公式更快地接近 Pi(π)的近似值。通过前 n 项的计算,求 Pi 近似值,下列选项中正确的是( )
Private Sub Command2_Click( )
Dim f As Integer, i As Long, n As Long
1
Dim pi As Double, s As Double
s = 0: n = Val(Text1.Text)
For i = 2 To 2*n ①
s = s + ②
Next i
pi = 3 + s * 4
Label2.Caption = Str(pi)
End Sub
A.①step 1 ② (-1)^(i\2+1) / (i * (i + 1) * (i + 2))
B.①step 1 ② (-1)^(i\2) / (i * (i + 1) * (i + 2))
C.①step 2 ② (-1)^(i\2+1) /(i * (i + 1) * (i + 2))
D.①step 2 ② (-1)^(i\2) / (i * (i + 1) * (i + 2))
【答案】C
8.(2011湖丽衢三地联考)9.有如下 VB 程序段:
a(1) = 1: s = 0
For i = 2 To 6
s = 0
For j = 1 To i – 1
s = s + a(j)
Next j
a(i) = s + 1
Next i
执行该程序段后,a(6)的值为
A.15 B.16 C.32 D.64
【答案】C
9.(2011湖丽衢三地联考)10.有如下 VB 程序段:
s = Text1.Text
If Mid(s, 1, 1) = "(" Then flag = True Else flag = False
cnt = 0: sum = 0
For i = 2 To Len(s)
c = Mid(s, i, 1)
If flag = True Then
If c >= "a" And c <= "z" Then
sum = sum + 1
Else
If sum <> 0 Then cnt = cnt + 1: sum = 0
End If
End If
If c = "(" Then flag = True
If c = ")" Then flag = False
Next i
文本框 Text1 的内容为一串只包含小写字母、左右括号和空格的字符串“(we can) do (better)
1