s = ""
For i = 1 To 5
a(i) = 0
Next i
For i = 2 To 5
For j = i To 5
If j Mod i = 0 Then a(j) = 1 - a(j)
Next j
Next i
For i = 1 To 5
If a(i) = 1 Then s = s + Str(i)
Next i
Text1.Text = s
运行该程序段后,Text1中显示的内容为( )
a = 3
b = 9
c = a + b
If c = 12 Then py = "正确" Else py = "不正确"
分析该程序段,下列说法正确的是( )
m =1: k = 1
For i = 2 To 9
If a(i) > a(i-1) Then
k = k + 1
If k > m Then m = k
Else
k = 1
End If
Next i
Text1.Text = Str(m)
该程序段运行后,文本框Text1中显示的内容是( )
PRIVATE SUB FORM_CLICK()
MAX=0: MIN=21
FOR I= 1 TO 10
A(I)=
IF THEN MAX=A(I)
IF THEN MIN=A(I)
NEXT I
PRINT “最大数是”;MAX ,”最小数是” ;MIN
END SUB
s = "2019appreciate": sum = 0
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch >= "a" And ch <= "z" Then
m = Asc(ch) - Asc("a") + 1
a(m) = a(m) + 1
End If
Next i
For i = 1 To 10
If a(i) > 0 Then sum = sum + 1
Next i
数组a各元素的初始值都为0,执行该程序段后,变量sum的值为( )
小陈根据上述的描述设计了以下的程序,界面如图b所示,单击“初始化”按钮Command 1,按要求生成相关数据存储在数组a中并在列表框List 1中显示,该程序中最外圈不能有地雷,单击“计算”按钮Command 2,对数组a中的数据进行计算并在列表框List 2中输出,输出数据元素的宽度为固定值。
请回答问题:
Const n=9:Const m= 10 'n存储地雷区域大小,m存储地雷数目
Dim a(1 To n*n) As Integer
Private Sub Command 1_Click()
'按要求生成数组a中的数据并在List 1中显示,代码略
End Sub
Private Sub Command 2_Click()
Dim i As Integer, j As Integer, row As Integer
Dim col As Integer, start As Integer, temp As String
For i=1 To n *n
IfThen
row=(i-1)\n+ 1
col=(i-1)Mod n+ 1
For j= 1 To 3
If a(start+col-1) >-1Then a(start+col-1) =a(start+col-1)+1
If a(start+col) >-1Then a(start+col) =a(start+col)+1
If a(start+col+1)>-1Then a(start+col+1) =a(start+col+1)+1
Next j
End If
Next i
List 2.Clear
For i=1To n
temp=“”
For j=1To n
temp=temp+adj(a((i-1) *n+j),3)
Next j
List 2.Add Item temp
Next i
End Sub
Function adj(x As Integer, y As Integer) As String
Dim s As String
s=Str(x)
For i= 1 To
s=“”+s
Next i
adj=s
End Function
For i=1 To 6
a(i)=Int(Rnd*10)+1
Next i
For i=1 To 5
If i Mod 2=1 And a(i)>a(i+1)Then
t=a(i):a(i)=a(i+1):a(i+1)=t
Else
a(i)=a(i)+1
End If
Next i
执行程序后,a数组各元素可能是( )
图a
图b
实现上述功能的 VB 程序如下,请回答下列问题:
Private Sub Commandl_Click()
Dim y As Integer
Dim start As Integer '考场第1位数据元素的下标
Dim pa As lnteger '数据库导人VB时学生数据下标
Dim pb As Integer '考场座位数据下标
Dim i As Integer,j As Integer,k As Integer, m As Integer
start= 1
pa=start
recCount=x-1
If recCount Mod 30 <>0 Then
①
For i=1 To y '将当前考生人数添加到 30 的整数倍
recCount=recCount+1
sName(recCount)= " "
Next i
End If
For j=1 To recCount/30
pa=start
pb=start
For i=1 To 30
kcsName(pb)= sName(pa)
pb=pb+1
If i Mod 5=0 Then
pa=start+i\5
Else
②
End If
Next i
start=start+30
Next j
Text1.Text=""
start=l
For k=1 To recCount/30
m=start
Text1.Text=Text1.Text+"第"+Str(k)+"考场"+vbCrLf
'vbCrLf 为换行标志符,实现Text1中内容换行显示
For i=1 To 6
For j=1 To 5
Text1.Text=Text1.Text+""+kesName(m)
m=m+1
Next j
Text1.Text=Text1.Texi+vbCrLf
Next i
Text1.Text=Text1.Text+vbCrLí+vbCrLf
③
Next k
End Sub
Private Sub Form_load()
Dim myconn As New ADODB.Connection
Dim myrecord As New ADODB.Recordset
myconn.ConnectionString=" provider=microsoft.Ace.Oledb.12.
0:data source=e:\kaochang.Accdb"
myconn.Open
strsql=" select * from三中"
myrecord.Open strsql,myconn
x=l
Listl.Addltem"考号 姓名"
List1.AddItem "----------------------"
Do While Not myrecord.EOF
'读取数据库数据,存入数组kh(x)、sName(x)中,代码略
List 1.Addltem kh(x)+" "+sName(x)
x=x+1
myrecord. MoveNext
Loop
myrecord.Close .
End Sub
① ② ③
1,3,5,7,9,11,13,15,17,19,21,23,25,……
此数列的第二项为3,将此数列的第3n个数删除,留下的数为:
1,3,7,9,13,15,19,21,25,……
新数列的第三项为7,将新数列的第7n个数删除,留下的数为:
1,3,7,9,13,15,21,25.……
若一直重复上述步骤,最后剩下的数就是幸运数。
下列程序的功能是找出1000以内的幸运数,但加框处代码有错,请改正。
Private Sub Commandl_Click()
Dim a(500)As Integer,b(500)As Integer
Dim i As Integer,m As Integer,k As Integer
Dim top As Integer,bott As Integer
'产生由1开始的奇数数列,依次存储在数组a中,代码略
top=2:bott=500
Do While top<bott
‘⑴
For i=1 To bott
If i Mod a(top)<>0 Then
b(k)= a(i)
k=k+1
End If
Next i
‘⑵
top = top+1
For i=1 To bott
a(i)=b(i)
Next i
Loop
For i=1 To bott
List1.AddItem Str(a(i))
Next i
End Sub
⑴ ⑵
实现上述功能的VB代码如下,但加框处有错,请改正。
Dim n As Integer '学生人数
Dim a(1 To 100) As Integer '存储学生的学号
Dim b(1 To 100) As String '存储学生的姓名
Private Sub Form_Load()
'从数据库中读取学生学号、学生姓名和总人数,分别存储在数组a,数b和变量n中,代码略
End Sub
Private Sub Command1_Click()
Dim L As Integer, R As Integer
Dim m As Integer, key as String
key=Text1.Text
L=1: R=n
Do While L<=R
m=(L+R)\2
If Then '①
L=m+1
Else
R=m-1
End If
Loop
For i= '②
a(i+1)=a(i)
b(i+1)=b(i)
Next i
n=n+1
a(i+1)=L
b(i-1)=Key
'插入后的结果显示在列表框List2,代码略.
End Sub
Private Sub Command1_Click()
Dim n As Integer, i As Integer
Dim s As Integer, x As Integer, f As Boolean
n= Val(Text1.Text)
f= False: s=0
i=2
Do While ①
For x=2 To i\2
If i Mod x=0 Then Exit For ‘Exit For用于退出For循环
Next x
If ② Then
s=s+1
If Then ‘③
Label1.Caption= "第"& Str(n) & "个素数为:"& Str()
f= True
End If
End If
i=i+1
Loop
End Sub
① ②
Dim x As Integer,y As Integer
x=2:y=3
If x+y=5 Then x=x+2
y=x+y
该程序段运行后,x,y的值为( )
a=12
b=54
a=a+b
b=a-b
a=a-b
该程序段执行后,变量a,b的值分别是( )
A=2:B=3:A=A+B:B=A-B:A=A-B