某对分查找算法的VB程序段如下:
i=1:j=6:flag=False
key=Val(Text1.Text)
Do While i<=j And flag=False
m=(i+j)\2
If key=a(m) Then flag=True
If key<a(m) Then j=m-1 Else i=m+1
Loop

数组元素a(1)到a(6)的值依次为“7,9,15,27,34,51”。文本框Text1中输入“27”后运行该程序,运行结束后,下列说法不正确的是(    )

A.变量flag的值为TrueB.变量i的值为4C.变量j的值为4D.变量m的值为4
当前题号:1 | 题型:选择题 | 难度:0.99
礼品分配问题:某班得到一件精美礼品,由于只有一件礼品,大家决定用下面方法来分配该礼品:n个同学围成一圈,按顺序从1到n进行编号。从第1个人开始报数,报到m的人退出,下一个人继续从1开始报数,报到m的人出圈┈┈,如此依次进行,直到留下的最后一个人得到该礼品。程序运行界面如图所示,单击“开始”按钮,将输出退出圈子的同学编号以及最后获得奖品的编号。

实现上述功能的VB程序如下,请回答下列问题。
(1)当班级总人数n=15,m=5的时候,获得礼品的同学编号是__________(填写数字)。
(2)在划线处填入合适的代码。
Private Sub Command1_Click()
Dim i As Integer, n As Integer, m As Integer
Dim num As Integer, t As Integer
Dim a(1 To 100) As Boolean
n = Val(Text1.Text)
m =Val(Text2.Text)
For i = 1 To n

a(i) = True

Next i
_____
Do While t > 1
For i = 1 To n
If a(i) = True Then _____
If num = m Then
_____
t = t -1
num = 0
Text3.Text = Text3.Text +Str(i)
End If
Next i
Loop
For i = 1 To n
If a(i)= TrueThen Label2.Caption = "获得礼品同学编号:" + Str(i)
Next i
End Sub
当前题号:2 | 题型:填空题 | 难度:0.99
某升序排序算法的VB程序段如下:
Dim a (8) As Integer
For i=2 To 8

a(0)=a(i)

Do While a (0)<a(j)


j=j-1

Loop

Next i
数组元素a(1)~a(8)的值为随机生成的整数,为实现升序排序,则上述程序段3个方框处的表达式分别为(    )
A.①j=i-1    ②a(j+1)=a(j)    ③a(j+1)=a(0)
B.①j=i+1    ②a(j+1)=a(j)    ③a(0)=a(j+1)
C.①j=i-1    ②a(j)=a(j+1)    ③a(j+1)=a(0)
D.①j=i+1    ②a(j)=a(j+1)    ③a(0)=a(j+1)
当前题号:3 | 题型:选择题 | 难度:0.99
由于交通日益拥堵,某市对车辆实施限行政策,即根据车牌最后一位数字进行限行判断,双号则奇数日期限行,单号的偶数日期限行。如车牌号“浙A53350”,末位数字为0,则奇数日期限行,如车牌号“浙A5335B”,末位数字为5,则偶数日期限行。现有一VB程序用来查询限行情况,软件界面如图,在文本框Text1中输入车牌号,单击“判断”按钮Command1,并在文本框Text2中显示限行情况。

“查询”按钮Command1的单击事件处理过程如下:
Private Sub Command1_Click()
Dim i As Integer, n As Integer '变量n保存车牌的最末位数字
Dim cp As String, c As String
cp=Text1.Text
For i=7 To 3 Step -1

c=Mid(cp, i, 1)

If        Then 

n=Val(c)
If          Then 
Text2.Text=″奇数日期限行″
Else
Text2.Text=″偶数日期限行″
End If
i=2

End If

Next i
End Sub
在程序划线处填写适当的表达式或语句,以实现程序功能。
程序中①划线处应填入________________________。 
程序中②划线处应填入________________________。
当前题号:4 | 题型:填空题 | 难度:0.99
有如下VB程序段:
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.ConnectionString="provider=Microsoft.AC
A.OLEDB.12.0;data sourc="
+App.Path+"\socre.accdb"
Conn.Open
Set rs.ActiveConnection=conn
Rs. Open"Selec*from cj"
n=1
Do While Not rs.EOF
Score(n)=rs.fields("成绩"):Name(n)=rs.fields("姓名")
n=n+1:rs.MoveNext
Loop
下列说法中不正确的是
B.定义的ADO的Connection对象实例名称是“conn”
B.连接的数据库文件名是“\socre.accdb”
C.查询的数据表名是“cj”
D.该程序段运行后,可知所查询的数据表共有n-1条记录
当前题号:5 | 题型:选择题 | 难度:0.99
食堂排队买菜。食堂排队买菜时,每个同学都有一个窗口买菜时间,如果某同学的等待时间超过他在窗口买菜时间的3倍,他就会不愉快,反之是愉快的。等待时间是指排在该同学之前的所有人的买菜时间之和。己知每个同学在窗口的买菜时间,请确定如何排队才能使愉快的人数最多,并输出最多的人数。例如:10个同学的买菜时间如下表所示,则最多有8个人是愉快的。
学生编号
l
2
3
4
5
6
7
8
9
l0
买菜时间
3
2
5
5
6
7
1
8
1
3
最终是否参与排队










 
Const n=10
Dim a(1 To n) As Integer
Private Sub Command1_Click()
Dim i As Integer,a As Integer,ans As Integer,t As Integer
,读取每个学生的买菜时间,依次存储在数组a中,代码略
For i =1 To n-1
k = i
For j = n To i+1 Step-1
If   Then k = j
Next j
If a(i)<>a(k) Then t = a(i):a(i)=a(k):a(k)=t
Next i
s=0:ans=0
For i = 1 To n
If s<ans Then s=s+a(i):ans=ans+1 
Next i
Label1.Caption="共有"+Str(ans)+ "个人是愉快的,且参与排队买菜。"
(1)代码“Private Sub Commandl_Click()”中的Command1是_________(单选,填字母:
A.对象名/B.事件名/C.事件处理过程名)
(2)请在划线处填入合适代码。___________________________
(3)程序代码中,加框处代码有错,请改正。___________________________
(4)若10个同学的买菜时间都相同,则有_________个人是愉快的,且参与排队。
当前题号:6 | 题型:填空题 | 难度:0.99
给定一个数组a,有n个元素(1≤n≤100),有以下两种操作:
操作1:在文本框中分别输入L、R、T(1≤L≤R≤n),对数组下标为L到R之内(包含L和R)的每个元素增加T(1≤T≤100)
操作2:在文本框中输入K(1≤K≤n),在标签中输出a(K)的值。
为了提高算法的效率,小明设计了如下算法,以n=10为例,如下表所示。
数组下标
l
2
3
4
5
6
7
8
9
l0
元素的值
7
l2
3
6
7
1l
8
24
9
5
 
①将n个元素依次分成段(表示对石向下取整,每段的元素个数为,若最后有不足个元素,则自成一段。给每段设置一个标记,初始值都为0,如下表所示。
数组下标
l
2
3
4
5
6
7
8
9
10
元素的值
7
12
3
6
7
1l
8
24
9
5
段编号
第l段
第2段
第3段
第4段
段标记值
0
0
0
0
 
②对于操作1,输入的L、R属于同一段,则直接对a(L to R)的每个元素加上T。如输入4,6,3,则第2段中的每个数加上3,操作后如下表所示。
数组下标
1
2
3
4
5
6
7
8
9
10
元素的值
7
l2
3
9
10
14
8
24
9
5
段编号
第1段
第2段
第3段
第4段
段标记值
0
0
0
0
 
③对于操作1,若输入的L,R不属于同一段,则对元素a(L)所在段中从a(L)开始到该段最后一个元素为止的每个元素加上T,并对元素a(R)所在段中从该段第一个元素开始到a(R)为止的每个元素加上T,对a(L)元素所在段的下一段开始到a(R)元素所在段的前一段为止的每个段标记值增加T,这些段中的元素保持不变。如在上表的其础上再输入1,8,2,则第1段的3个数和第3段中的前2个数都加上2,第2段的段标记位增加2,如下表所示。
数组下标
l
2
3
4
5
6
7
8
9
l0
元素的值
9
14
5
9
l0
l‘l
10
26
9
5
段编号
第1段
第2段
第3段
第4段
段标记位
0
2
0
0
 
④对于操作2,若输入K的值为5,则输出a(5)的值,a(5)的值为该数组元素的值+段标记值,即a(5)=12。程序运行界面如下。请回答下列问题:
(1)若数组元素为“3,2,6,8,7,9,3,4,7,9,6”,依次进行以下3次操作后第3段的标记值为__________

操作1:依次输入1,11,1
操作1:依次输入7,9,2
操作2:输入8
(2)请在划线处填入合适的代码。
Const n = 10
Dim a(1 To n) As Integer
Dim f(1 T on) As Integer 'f数组元素依次表示每段的标记值
Dim bk As Integer     'bk表示每段的元素个数
Function BL(x As Integer) As Integer 'BL函数返回数组元素a(x)的段编号
BL=________________
End Function
Private Sub Form_Load()
’读取数据,并存储到数组a中,代码略
bk=Int(Sgr(n))
End Sub
Private Sub Command1_Click()
Dim L As Integer,R As Integer,T As Integer,i As Integer
L=Val(Text1.Text):R=Val(Text2.Text):T=Val(Text3.Text)
If BL(L)=BL(R) Then

For i=L To R

a(i)=a(i)+T
Next i

EIse

For i=______________
a(i)= a(i)+T
Next i
For i=BL(L)+1 To BL(R)-1
f(i)= f(i)+T
Next i
For i=(BL(R)-1)* bk+1 To R
a(i)= a(i) +T
Next i

End If

End Sub
Private Sub Command2_Click()
Dim K As Integer
K=Val(Text4.Text)
Labe.15.Caption="经过一系列操作后.a("+Str(K)+ ")的值为:"+___________
End Sub
当前题号:7 | 题型:填空题 | 难度:0.99
采用冒泡排序对一组数据进行排序,第一遍排序后的结果为2,19,4,55,6,7,11,13,32,那么该数组的原始顺序不可能是()
A.19,4,55,6,7,11,13,32,2
B.2,19,4,55,13,11,32,6,7
C.19,4,55,2,6,7,11,13,32
D.19,4,55,6,7,11,2,13,32
当前题号:8 | 题型:选择题 | 难度:0.99
采用冒泡排序算法对数据序列“2,3,4,5,1,0”完成升序排序,则需要交换的次数为(   )
A.9次B.12次C.15次D.18次
当前题号:9 | 题型:选择题 | 难度:0.99
篮球联赛中,有5个班级的比赛积分依次为14,11,13,8,9。若采用冒泡排序算法对其进行从小到大排序,则完成第二遍时的结果是(   )
A.8,11,13,14,9B.8,9,13,14,11
C.8,9,14,11,13D.14,13,11,9,8
当前题号:10 | 题型:选择题 | 难度:0.99