学号 |
姓名 |
性别 |
出生年份 |
户籍所在地 |
注册日期 |
是否住校 |
201802001 |
张立 |
男 |
2003 |
杭州市江干区 |
2018/8/31 |
是 |
201901001 |
李红 |
女 |
2004 |
杭州市西湖区 |
2019/9/1 |
否 |
… |
… |
… |
… |
… |
… |
… |
下列关于该学生管理信息系统的描述,错误的是 ( )
m = a(1) : s = 0
For i = 2 To 5
If a(i) > m Then m = a(i)
s = s + m
Next i
数组元素a(1)到a(5)的值依次为“1,3,4,2,3”,执行该程序段后,变量s的值为( )
i=i+1 : j=j+1
Do While i<=Len(s1) And j<=Len(s2)
If Mid(s1, i, 1 )=Mid(s2, j, 1) Then
i=i+1 : j=j+1
Else
End If
Loop
If i>Len(s1) And j>Len(s2) Then Text1.Text=“相同”Else Text1.Text=“不相同”
方框中的代码由以下三部分组成:
①If Mid(s1, i, 1)="" Then i=i+1
②If Mid(s2, j, 1)="" Then j=j+1
③If Mid(s1, i, 1)< > " " And Mid(s2, j, 1)<>" " Then Exit Do 'Exit Do表示退出循环
代码顺序正确的是( )
key=Val(Text1.Text)
s=" "
i=1 : j=10
Do While i<=j
m=(i+j)\2
s=s+Str(a(m))
If a(m)> key Then j=m-1 Else i=m+1
Loop
Text 2.Text =s
数组元素a(1)到a(10)的值依次为“2,3,5,8,9,10,13,17,19,20”。在文本框Text l中输人待查找的数,执行该程序段,则文本框Text 2中显示的内容可能的是( )
回答下列问题:
小王用一个字符串记录了甲选手多局比赛数据,其中有一处错误,位于连续多个“0”的最后一个。为了找出错误,小王的处理方法如图a所示,对示例中疑似错误位置6和20分别修改数据,并统计每局比分。他编写了VB程序,功能如下:在窗体Form l的文本框Text l中输入记录数据,单击“分析”按钮Command 1,在列表框List 1中输出修改位置以及修改后每局的比分。程序运行界面如图b所示。
图a |
图b |
Private Sub Command 1_Click( )
Dim sp As String, s As String s ‘s存储甲选手多局比赛的记录数据, 长度小于50
Dim a(1 To 50)As Integer, e(1 To 20)As Integer
Dim i As Integer, j As Integer, k As Integer, n As Integer, m As Integer
Dim f1 As Integer, f2 As Integer
s=Text 1.Text
n=Len(s)
For i=2 To n
a(i)=Val()
Next i
m=0 : i=1
Do While i<=n
k=i
Do While a(i)=0 And i<=n 找出疑似错误位置
i=i+1
Loop
If Then
m=m+1:e(m)=i-1
End If
i=i+1
Loop
For i=1 To m ‘对每个疑似错误位置分别修改数据,并统计每局比分
f1=0 : f2=0
k=e(1)
a(k)=1
sp="" & k &""
For j=1 To n
If a(j)=1 Then f1=f1+1 Else f2=f2+1
If Then
sp=sp & "/" & f1 &":" & f2
f1=0 : f2=0
End If
Next j
If f1+f2>0 Then sp=sp & "" & f1 & ":"& f2
List 1.AddItem sp
Next i
End Sub
按上述要求,编写一个VB程序,功能如下:在列表框List 1中显示整理前的数据,单击“整理”按钮Command 1,整理结果显示在列表框List 2中,程序运行界面如图所示。
Const n=200 ‘报名总人数
Const nc=10 ‘城市数
Dim city(1 To n) As Integer, pname(1 To n) As String, times(1 To n) As Integer
Dim b(1 To nc) As Integer ‘存储每个城市的报名人数
Dim c(1 To nc) As Integer
Dim q(1 To nc) As Integer
Private Sub Form_Load()
‘本过程读取城市序号,姓名和参加次数的数据分别存储在数组city;pname和times中,并在List 1中显示,代码略
End Sub
Private Sub Command 1_Click( )
Dim i As Integer, j As Integer, k As Integer, t As Integer, pos As Integer
For i=1 To nc
b(i)=0
Next i
For i=1 To n ‘统计每个城市报名人数
b(k)=b(k)+1
Next i
k=1
For i=1 To nc
c(i)=k
k=k+b(1)
Next i
For i=1 To n
k=city(i)
c(k)=c(k)+1
Next i
pos=1
For i=1 To nc ‘对各城市报名数据按参加志愿服务的次数进行排序
For j=pos To pos +b(i)-2
k=fp(j, pos+b(i)-1)
t=q(k) : q(k )=q(j) : q(j)=t
Next j
pos=pos+b(i)
Next i
For i-1 To n
List 2.AddItem " " & city(q(i))& " " & pname(q(i))& " " & times(q(i))
Next i
End Sub
Function fp(head As Integer,tail As Integer)As Integer
Dim i As Integer,k As Integer
k=head
For i=
If times (q(i))>times (q(k)) Then k=i
Next i
fp=k
End Function