题库 高中信息

题干

下列可以作为Visual Basic变量名的是( )
A.5ADB.A+CC.Ab_3D.B&C
上一题 下一题 0.99难度 选择题 更新时间:2015-08-28 05:52:24

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

同类题1

(加试题)小李与小王合作编写一个成绩统计的VB程序:小王编写一个过程,该过程从数据库读取某一指定科目的相关数据,存储在数组a中;小李编写一个过程,该过程依据数组a中的相关数据进行排序。小李与小王约定的数组a各元素含义如图所示。
数组元素
数组元素的含义
a(1)
存储班级数n
a(2)
从a(2)到a(n+1) 依次存储第1、2、…第n个班级人数
…
a(n+1)
a(n+2)
从a(n+2) 依次存储第1班每个学生的单科成绩、第2班每个学生的单科成绩、…第n班每个学生的单科成绩
…
…
 
程序功能如下:在文本框Text1中输入科目名称,单击“读取数据库”按钮Command1,程序从数据库读取数据,数据存放与a()中,呈现方式如表所示;在文本框text2中输入第几班级,单击“开始排序”按钮Command2,程序对输入班级的学生成绩进行排序,结果输出在列表框List1中。程序运行界面如下图所示。

实现上述功能的VB程序如下,请回答下列问题:
(1)根据程序运行界面中的数据及数组a各元素的含义,数组元素a(5)表示的是_____________ 
(2)分析程序,可知数据库的文件名为____________________
(3)请在划线处填入合适的代码。
Dim a(1 To 600) As Integer    '数组大小满足处理要求
Private Sub Command1_Click()  '本过程由小王完成,从数据库读取指定科目的各相关数据,存储在数组a中
Dim conn As New ADODB.Conncction
Dim rs As New ADODB.Recordset
conn ConncctionString = "provider=Microsoft.AC
A.OLEDB.12.0;data source=" + "Score.accdb"
conn.Open
Set rs.ActiveConnection = conn '本过程的其他语句略
End Sub
Private Sub Command2_Click() '依据数组a中的相关数据对第k个班级的学生平均分进行升序排序
Dim i As Integer, j As Integer, n As Integer  ‘i,j为循环变量,n为班级个数
Dim k as integer,t as integer
Dim p As Integer  ‘p为前几个班级的总人数
k=val(text2.text)
For i=2 to k  ‘求得前几个班级的总人数
p=p+a(i)
Next i
t=___________‘t为第k-1个班级最后一个学生所在的位置
For i=t+1 to t+a(k+1)-1    ‘t+1为第k个班级第一位学生所在的位置,t+a(k+1)为第k个班级最后一个学生所在的位置
For j= __________ to i+1 step -1
If a(j)<a(j-1) then
k= a(j - 1): a(j - 1) = a(j): a(j) = k
Endif
Next j
Next i
For i=1 to a(k+1)
List1.additem str(i)+”    ”+str(a(t+i))
Next i
End Sub

同类题5

为分析数组a中各元素依次变化的情况,进行如下定义:
变化段:数组中相邻两个元素构成一个变化段。变化段有上升段(a(i)>a(i-1))、下降段(a(i)<a(i-1))和持平段(a(i)=a(i-1))。数组a中的n个元素可构成n-1个依次排列的变化段。
波峰:从上升段转到下降段形成一个波峰。波峰的起点是峰顶前所有连续上升段中的第1个,终点是峰顶后所有连续下降段中的最后1个。
对称波峰:上升段与下降段个数相同的波峰称为对称波峰。
下图为一组数据的变化段及波峰示意图。

现要求统计数组a各元素依次变化过程中“对称波峰”的个数。小李依据上述描述设计如下VB程序。请回答下列问题:
(1)数组元素“1,4,3,3,2,6,8,7,9,3,4,7,9,6,3,1”依次变化过程中“对称波峰”的个数为_____。
(2)请在划线处填入合适的代码。
Const n = 20
Dim a(1 To n) As Integer
Private Sub Form_Load()
'读取数据,并存储到数组a中,代码略
End Sub
Private Sub Command1_Click()

Dim flag As Integer  '存储变化段的状态:1表示升,-1表示降,0表示平

Dim count As Integer '存储对称波峰段的个数

Dim steps As Integer

Dim i As Integer

flag = 0: steps = 0: count = 0

For i = ________ To n

If a(i) > a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

If flag = 0 Or flag = -1 Then

_________

Else

steps = steps + 1

End If

flag = 1

ElseIf a(i) = a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

steps = 0

flag = 0

Else

  steps = steps - 1

flag = -1

End If

Next i

If IsSymPeak(flag, steps) Then count = count + 1

Text1.Text = Str(count)

End Sub
Function IsSymPeak(flag As Integer, steps As Integer) As Boolean

If __________________ Then

IsSymPeak = True

Else

IsSymPeak = False

End If

End Function