下面程序段是利用For语句给数组a赋值( )
For i= 1 To 5
a(i)=3*i+i^2
Next i
该程序段运行后数组元素a(5)的值为( )
A.40B.15C.28D.18
当前题号:1 | 题型:选择题 | 难度:0.99
下列VB程序段执行后变量n、s的值为( )
n=1: s=0
Do while s<20
s=s+n
n=n+2
Loop
A.9  16B.11  20C.11  25D.9  24
当前题号:2 | 题型:选择题 | 难度:0.99
(加试题)某一过程算法的VB程序段如下:
Private Sub Command1_Click()
Dim n As Integer
n = Val(text1.Text)
Call prsj(n) '调用自定义过程
End Sub
Sub prsj(c As Integer)  '自定义过程,可以用Call语句来调用该过程
Dim i As Integer, j As Integer, k As String
List1.Clear
For i = 1 To c
k = ""
For j = 1 To i
k = k + "*"
Next j
List1.AddItem k
Next i
End Sub
在文本框Text1输入3,执行该程序段后,在列表框List1中显示的是
A.B.C.D.
当前题号:3 | 题型:选择题 | 难度:0.99
在计算机系统中,数值一律用补码来表示和存储。求负整数的补码是将该数对应的正数转换为二进制数(不足8位时高位补0),最高位作为符号位为1,其余每位二进制数取反(1变成0,0变成1),末位加1。
小明编写了一个VB程序,功能如下:在文本框Text1中输入一个负整数,单击“转换”按钮Command1后,在文本框Text2中显示该数对应的补码。程序运行界面如图所示。

(1)在设计程序界面时,要使按钮Command1显示为“转换”,应修改该按钮的_______属性。
(2)实现上述功能的VB程序如下,请在划线处填入合适代码。
Private Sub Command1_Click()
Dim a(8) As Integer, x As Integer, b As String
x = Val(Text1.Text)
x = Abs(x)
For i = 1 To 7 '求原码
a(i) = x Mod 2
x = x \ 2
Next i
For i = 1 To 7 '求反码
a(i) =___________
Next i
b = "1" '求补码
a(1) = a(1) + 1
i = 1
Do While a(i) = 2 And i < 7
a(i) = 0
a(i + 1) = a(i + 1) + 1
i = i + 1
Loop
For i = 7 To 1 Step -1
b = b + Trim(Str(a(i)))   'trim()函数去除字符前后空格
Next i
Text2.Text = __________
End Sub
(3)运行该程序,在文本框Text1中输入-10,单击“转换”按钮,则显示的补码是__。
当前题号:4 | 题型:填空题 | 难度:0.99
(加试题)小明编写了一个统计成绩的VB程序:编写一个过程,该过程从数据库读取学生的物理,化学,生物科目成绩,分别存储到数组a、b、c中;另又编写一个过程,该过程依据数组a,b,c中的相关数据统计班级物理、化学、生物三门成绩大于等于85分的学号。部分学号的成绩统计如图所示。
门数
学号
说明
只有一门>=85分
1,10
d(i)存放每个学号对应的大于等于85分科次
只有两门>=85分
2,3,4,6,12
只有三门>=85分
7,8,9,11
 
程序功能如下:单击“统计”按钮Command2,程序进行统计处理,结果输出在列表框List1、List2、List3中。
程序运行界面如图所示。

(1)在Command1_Click()过程中变量n的作用是_____________。
(2)请在划线处填入合适的代码。
Dim a(1 to 600) as integer  '数组a存放物理成绩
Dim b(1 to 600) as integer  '数组b存放化学成绩
Dim c(1 to 600) as integer  '数组c存放生物成绩
Dim n as integer
Private Sub Command1_Click()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Conn ConnectionString="provider=Microsoft.AC
A.OLEDB.12.0;data source="+"Score.accdb"
Conn.Open
Set rs.ActiveConnection=conn
rs.Open "SELECT * FROM whs"
n=0 
Do While Not rs.EOF '从数据表中读取各科的数据赋值到相应数组
n=n+1 
a(n)=rs.Fields("物理") 
b(n)=rs.Fields("化学") 
c(n)=rs.Fields("生物") 
rs.MoveNext
Loop
'本过程的其他语句略
End sub
Private Sub Command2_Click()
'依据数组a中的相关数据统计各学生每门课大于等于85分的学号
Dim i As Integer
Dim d(1 to n) As Integer
For i= 1 to n
____________
Next i
List1.AddItem "三门学科>=85分的学号有:"
List2.AddItem "两门学科>=85分的学号有:"
List3.AddItem "一门学科>=85分的学号有:"
For i = 1 To n
If a(i) >= 85 Then
d(i) = d(i) + 1
End If
If b(i) >= 85 Then d(i) = _____________
If ___________  Then
d(i) = d(i) + 1
End If
Next i
For i = 1 To n
If d(i) = 3 Then List1.AddItem Str(i)
If d(i) = 2 Then List2.AddItem Str(i)
If d(i) = 1 Then List3.AddItem Str(i)
Next i
End Sub
当前题号:5 | 题型:填空题 | 难度:0.99

   运行下列VB程序,在文本框Text1中输入15,界面如图所示。


Private Sub Command1_Click()
 Const x=“转换成八进制数为”
Dim y As Integer  ‘用于存储输入的十进制自然数
Dim s As String   ‘用于存储转换后的结果
Dim r As Integer
y=Val(Text1.Text)
s=“”
Do While y<>0   ‘采用除八取余法
 r=y Mod 8
 s=Str(r)+s
 y=y\8
Loop
Label1.Caption=Text1.Text+x
Text2.Text=s
End Sub
单击“开始”按钮Command1后,标签Label1中显示的内容是_________,文本框Text2中显示的内容是_______。
当前题号:6 | 题型:填空题 | 难度:0.99
下列VB程序用来实现[1,10]之间奇数之和,单击Command1后,标签Label1中显示的内容是_____,循环变量j最终的值是___________ ,并完成程序一处空白。
Private Sub Command1_Click()
Dim s As Integer,j As Integer
s=0
For j=1 To 10
 If j Mod 2 <> 0 Then
  _____________
 End If
Next j
Label1.Caption=Str(s)
End Sub
当前题号:7 | 题型:填空题 | 难度:0.99
(加试题)猴子选大王的问题:N 只猴子选大王,选举办法如下:从头到尾 1、2、3 报数,凡报 3 的退 出,余下的从尾到头 1、2、3 报数,还是报 3 的退出,依此类推;当剩下只有两只猴子时,不再报数,取 当前报数报 1 的为王。如五只猴子报数,则第一轮顺序为第 12345,第 3 只出列,第二轮顺序为 5421,第 2只出列;第三轮顺序为 145,第 5 只出列,这时第 1 只猴子报数为 1,则第 1 只猴子为猴王。若想当猴王, 请问最初占据什么位置?在 Text1 文本框中输入参选大王的猴子总数量,单击“猴王的位置”,在 Label2 标 签上显猴王最初的位置。VB程序运行界面如下:

实现上述功能的 VB程序如下:
(1)如果只有 10 只猴子参加本次选大王,则猴王最初的位置为:________
(2)实现上述功能的 VB程序如下,请在划线处填入合适代码。
Private Sub Command1Click()
Dim n, x, m, s As Integer   '假设参与的猴子数量不超过 5000
Dim a(1 To 5000) As Integer  '用数组 a 存储每只猴子的报数,值为 3 时视同出列
Dim t, y As Boolean    't 用于循环,y 为 true 时表示报数顺序是从头到尾,y 为 false 时报数顺序 是从尾到头
n = Val(Text1.Text)
x = 1  'x 为每次猴子的位置
m = 1  'm 为报数的 1、2、3
y = True
t = True
Do While t
'该位置的猴子是否已经出列
If a(x) <> 3 Then '没有出列的,则报数
a(x) = m
①________ '1,2,3 之后重新开始
If m > 3 Then m = 1
Else '每次有猴子报 3 出列之后,检查是否已经只有两只猴子没有出列
s = 0
For i = 1 To n
If ②________   Then s = s + 1
Next i
If s < 3 Then Exit Do
End If
If y = True Then x = x + 1 Else x = x - 1
'检查报数是在递增,还是递减,y 为 true 时递增
'报到最后一次猴子后
If x > n Then y = False: m = 1: x = n
'报到第一次猴子后
If x = 0 Then y = True: m = 1:
Loop
'输出猴王的位置
For i = 1 To n
③_________
If a(i) = 1 Then Label2.Caption = "猴王的位置为第" + Str(i) + " 只"
Next i
End Sub
当前题号:8 | 题型:填空题 | 难度:0.99
退出当前For循环的代码为(   )
A.endB.exitC.subD.exit for
当前题号:9 | 题型:选择题 | 难度:0.99
编写“因子分解”程序,实现如下功能:在文本框 Text1 中输入一个大于 1 的正整数,单击“求因子” 按钮 Command1,在列表框 List1 中显示该数的所有因子,以及所有因子之和。程序运行界面如图所示。

(1)代码“Private  Sub Command1Click()”中的 Command1Click 是________。
(单选,填字母:
A.对象名B.事件名C.事件处理过程名)
(2)实现上述功能的 VB程序如下,请在划线处填入合适的代码。
Private Sub Command1Click()
Dim sum As Integer
Dim n As Integer, i As Integer
n = Val(Text1.Text)
List1.Clear
sum = 1
List1.AddItem Str(sum)
For i = 2 To Int(Sqr(n))
If ①________Then
sum = sum + i
List1.AddItem Str(i)
If i <> n / i Then
sum = ②_____ 
List1.AddItem Str(n / i)
End If
End If
Next i
List1.AddItem Str(n) + "的所有因子之和是" + Str(sum)
End Sub
(3)运行该程序,在文本框中输入 9,单击“求因子”按钮后,所有因子之和是________。
当前题号:10 | 题型:填空题 | 难度:0.99