Private sub command1_click()
Dim a(0 to 9) as integer ‘数组元素a(i)中存放数字i的个数
Dim s as string , ch as string
Dim t as integer
For i=0 to 9
a(i)=0
next i
s=text1.text
for i=1 to len(s)
if ch>=”0”and ch<=”9” then
t=
a(t)= a(t)+1
end if
next i
list1.clear
for i=1 to 9
if a(i)<>0 then
list1.additem ”数字:”+str(i)+ ”,共有”+ str(a(i))+ ”个”
end if
next i
end sub
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
For i =1 To 6
k=i
For j = i+1 To 7
If a(j) < a(k) Then k = j
Next j
If i <> k Then
t = a(i): a(i) = a(k): a(k) = t
End If
Next i
在排序过程中,经过某一遍排序“加工”后,数组元素a(1)到a(7)的数据依次为“10,41,75,12,63,11,85”,则下一遍排序“加工”后数组元素a(1)到a(7)的数据依次是( )
For i= 1 To 49
j=1:a(j)=a(j)+1
Do While a(j)=5
a(j)=0
j = j + 1
a(j) = a(j) + 1
Loop
Next i
数组a中各元素初始值均为0,该程序执行后,数组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,程序从数据库读取数据;单击“开始统计”按钮Command2,程序进行统计处理,结果输出在列表框List1中。程序运行界面如图所示。
实现上述功能的VB程序如下,请回答下列问题:
Dim a(1 To 600)As Integer '数组大小满足处理要求
Private Sub Command 1_Click()
'本过程由小王完成,从数据库读取指定科目的各相关数据,存储在数组a中
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.ConnectionString =" provider = Microsoft. ACE.
OLEDB.12.0;datasource="+"Score.Accdb"
conn.Open
Set rs.ActiveConnection=conn
'本过程的其他语句略
End Sub
Private Sub Command 2_Click()
'本过程由小李完成,依据数组a中的相关数据统计各班级平均分
Dim i As Integer,j As Integer,n As Integer
Dim p As Integer,sum As Integer,aver As Single
①
p=n+2
For i=1 To n
sum=0
For j=1 To a(i+1)
②
p=p+1
Next j
aver=sum/a(i+1)
Listl. Addltem Str(i)+""+Str(a(i+1))+""+Str(aver)
Next i
End Sub
① ②
|
排序前 |
86 |
71 |
5 |
41 |
81 |
79 |
37 |
89 |
|
排序后 |
5 |
37 |
41 |
71 |
79 |
89 |
86 |
81 |
实现上述功能的VB代码如下,但加框处有错,请改正。
Const n=8
Dim a(1 To n)As Integer
Private Sub Commandl_Click()
Dim i As Integer,j As Integer,k As Integer,t As Integer
Dim flag As Boolean
'读取一组正整数,存储在数组a中,代码略
For i= 1 To n-1
'(1)
If IsPrime(a(k))Then flag = True Else flag = False
For j = i + 1 To n
If IsPrime(a(j)) Then
If
Then '(2)
k=j
flag = True
End If
End If
Next j
If k <> i Then
t=a(k):a(k)= a(i):a(i)= t
End If
If Not flag Then Exit For 'Exit For表示退出循环
Next i
'依次输出排序后的数据。代码略
End Sub
Function IsPrime(m As Integer)As Boolean
'本函数判断m是不是素数:是素数返回值为True,不是素数返回值为False
'代码略
End Function
⑴ ⑵
For i=1 To 9
For j=10 To i+2 Step-1
If a(j)<a(j-2) Then
t=a(j): a(j)=a(j-2): a(j-2)=t
End If
Next j
Next i
数组元素a(1)到a(10)的值依次为“3,17,2,14,15,6,7,18,9,4”,执行该程序段后,数组元素a(8)中的值为( )
输出数组的最大值。
arr1 =[12, 435, 76, 24, 78, 54, 866, 43]
= -32768
for i in range(0,7):
if arr1[i] > max1 : max1 =
print("最大值是:",)
input("运行完毕,请按回车键退出...")
pwd= {" Name" : "User", "Password" :"@YueKao108"}
pwd["Name* ]=" Administrator"
print(pwd["Name"][:4])
