下列说法正确的是( )
n =10
Text1. Text =" "
For i=1 To 5
For j=n To i+1 Step-1
If a(j) < a(i) Then
temp = a(j) : a(j) = a(i) : a(i) = temp
End If
Next j
Next i
For i=1 To 10
Text1. Text = Text1. Text+Str(a(i))
Next i
数组元素a(1)到a(10) 的值依次为“965,155,195,444,106,734,172,983,898,360”,执行该程序段,文本框Text1中显示的是( )
Dim a(1 To 6)As Integer
Randomize
a(1)=Int(Rnd*2)+1
For i=2 To 6
a(i)=Int(Rnd*i)*2+1
If a(i)< a(i-1)Then
a(i)= a(i)+ a(i-1)
End If
Next i
执行该程序段后,数组元素a(1)到a(6)的值可能是( )
i =1 : j=8 : x=27 : mark = False
Do While i <= j And Not mark
m=(i+j+1)\2
If a(m) = x Then mark = True
If a(m)>x Then j=m-1 Else i=m+1
Text1. Text = Text1. Text+Str(m)
Loop
执行该程序段,文本框Text1中显示的是( )
For i=1 To 3
For j=5 To i+1 Step-1
If a(j)<a (j-1) Then
t = a(j) : a(j) = a(j-1) : a(j-1)=t
End If
Next j
List1. AddItem Str(a(i))
Next i
数组元素a(1)到a(5)的数据依次为“81,20,69,54,43”,经过该程序段加工后,列表框list1中显示的内容是( )
转换的算法如下:
1)改变列的位置:原矩阵第3列变为新矩阵的第1列,原矩阵第1列变为新矩阵第2列,原矩阵第4列变为新矩阵第3列,原矩阵第2列变为新矩阵第4列。
2)改变行的位置:经过(1)处理后的矩阵的第1行和第4行交换,第2行和第3行交换。实现上面的功能,程序运行界面如图所示。
Dim sc(1 To 16) As Integer
Dim zh(1 To 16) As Integer
Private Sub Command1_ Click( )
'在列表框list1中生成4*4矩阵sc,代码略
End Sub
Private Sub Command2_Click( )
Dim pb As Integer, tmp As Integer, i As Integer, line As String
For i=1 To 16 '变化列
If i Mod 4=1 Then
ElseIf i Mod 4=3 Then
pb=i-2
Else
pb=pb+2
End If
zh(pb)= sc(i)
Next i
For i=1 To 8 '交换行
If Then
tmp=zh(i) : zh(i)=zh(i+12) : zh(i +12)= tmp
Else
tmp=zh(i) : zh(i)=zh(i+4) : zh(i+4)= tmp
End If
Next i
line= ""
List2. Clear
For i=1 To 16
If i Mod 4=1 Then
List2. AddItem line
line= adj(Str(zh(i)), 3)
Else
End If
Next i
List2. AddItem line
End Sub
Function adj(a As String,n As Integer) As String
'adj 函数的功能:在字符串a前加入适当的空格,使得a的程度为n位,代码略。
End Function
如下图所示,其中第一层蛋糕有5种,体积分别为4、3、5、8、1;第二层有4种,体积分别为6、4、8、5;第三层有7种,体积分别为5、9、4、5、7、6、4。所选方案须符合“第一层<第二层<第三层”,如:第层选3,第二层选4第三层选6。方案共有31种。
请在划线处填入适当的代码。
Dim a(100) As Integer, b(100) As Integer, c(100) As Integer
'a、b、c数组分别存储上、中、下三层蛋糕的体积
Dim i As Integer, j As Integer, cnt As Integer, ans As Integer
Dim na As Integer, nb As Integer, nc As Integer
'na,nb、nc分别记录上、中、下三层蛋糕的种类数量
Private Sub Command1_ Click( )
Dim L As Integer, R As Integer, m As Integer
For i=1 To na-1
For j=na To i+1 Step-1
If a(j) < a(j-1) Then tmp=a(j) : a(j) =a(j-1) : a(j-1)= tmp
Next j
Next i
For i=1 To nc-1
For j=nc To i+1 Step-1
If c(j) < c(j-1) Then tmp= c(j) :c(j)=c(j- 1) :c(j- 1)= tmp
Next j
Next i
For i=1 To
L=0 : R=na+ 1
Do While L+1<R
m=(L+ R)\ 2
If a(m) < b(i) Then
L=m
Else
R= m
End If
Loop
cnt= L
L=0 : R=nc十1
Do While L+1<R
m=(L+R)\2
If Then
R= m
Else
End If
Loop
cnt=cnt * ()
ans= ans+cnt
Next i
Label1. Caption="共有"十Str(ans) + "种方案
End Sub
Private Sub Form_ Load( )
'随机生成三层蛋糕的数量存储在na、nb、nc中,生成三层蛋糕的体积存储在a、b、c数组中,并输出,代码略
End Sub