题库 高中信息

题干

数组元素a(1)~a(n)升序排列,存储整数且数值的范围为[1,n-1](n≥2),其中仅有两个相邻的数组元素的数值发生了重复。小王为找出重复数组元素的前、后位置设计了一个程序,实现该功能的VB程序段如下:
in=1;j=n
Do While1
m=(i+j)\2
If a(m)=m Then

2

Else

3

End If
Loop
Labell.Caption="相邻重复两数的前、后位置余别是:"+str(i)+"和"Stri(j)"
上述程序段3个划线处(1),(2),(3)的代码分别为(   )
A.(1)i+1<=j  (2)i=m  (3)j=m
B.(1)i+1<j  (2)i=m  (3)j=m
C.(1)i+1<j  (2)i=m+1  (3)j=m-1
D.(1)i=j  (2)i=m+1  (3)j=m-1
上一题 下一题 0.99难度 选择题 更新时间:2020-03-31 11:34:04

答案(点此获取答案解析)

同类题1

(加试题)小明编写了一个统计成绩的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