VB提取数组元素组成新数组
s=Array(1,2,3,4,5,6,7,8,9)Fori=0ToUBound(s)Ifs(i)>2Ands(i)<6ThenMsgBoxs(i)EndIfNext34...
s = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
MsgBox s(i)
End If
Next
3 4 5这三个数满足条件,如何将满足条件的三个数存到一个新数组中,数组这块感觉很迷茫!!!如果不确定新数组元素个数时该作如何考虑?? 展开
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
MsgBox s(i)
End If
Next
3 4 5这三个数满足条件,如何将满足条件的三个数存到一个新数组中,数组这块感觉很迷茫!!!如果不确定新数组元素个数时该作如何考虑?? 展开
2个回答
展开全部
那就运行时重新定义A的下标范围,不过数据多了可能会影响效率
Dim A() As Integer '先定义一个空数组
s = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
j = 1
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
ReDim Preserve A(1 To j) '更新A的下标范围
A(j) = s(i) '将满足条件的元素存到新数组元素,注意只能一个一个元素赋值
j = j + 1 '修改数组下标,以便存入下一个元素
MsgBox s(i)
End If
Next i
'最后 A(1)=3 A(2)=4 A(3)=5 后面没了
Dim A() As Integer '先定义一个空数组
s = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
j = 1
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
ReDim Preserve A(1 To j) '更新A的下标范围
A(j) = s(i) '将满足条件的元素存到新数组元素,注意只能一个一个元素赋值
j = j + 1 '修改数组下标,以便存入下一个元素
MsgBox s(i)
End If
Next i
'最后 A(1)=3 A(2)=4 A(3)=5 后面没了
展开全部
dim A () as integer ’先定义一个空数组
s = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
j = 1 ‘j是数组下标,数组元素是通过下标来识别的
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
A(j) = s(i) '将满足条件的元素存到新数组元素,注意只能一个一个元素赋值
j = j+1 '修改数组下标,以便存入下一个元素
MsgBox s(i)
End If
Next i
s = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
j = 1 ‘j是数组下标,数组元素是通过下标来识别的
For i = 0 To UBound(s)
If s(i) > 2 And s(i) < 6 Then
A(j) = s(i) '将满足条件的元素存到新数组元素,注意只能一个一个元素赋值
j = j+1 '修改数组下标,以便存入下一个元素
MsgBox s(i)
End If
Next i
更多追问追答
追问
我试了一下,这段代码要报错:下标越界
追答
把第一行改成dim A (1 to 6) as integer
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询