VB高手指点数组问题
代码如下PrivateSubCommand1_Click()Text1.Text=""DimsAsLong,iAsLongDimA()DoReDimPreserveA(s...
代码如下
Private Sub Command1_Click()
Text1.Text = ""
Dim s As Long, i As Long
Dim A()
Do
ReDim Preserve A(s)
A(s) = InputBox("请输入字符串", "输入空串时结束", "输入")
s = s + 1
Loop Until A(s - 1) = ""
For i = 0 To s - 2
Text1.Text = Text1.Text & "第" & CStr(i + 1) & " 个是:" & CStr(A(i)) & ""
Next i
Erase A
End Sub
疑问:Dim A()和ReDim Preserve A(s)是不是定义重复了?
s = s + 1的意义是什么?S的值是多少?
Loop Until A(s - 1) = ""直到A(s - 1) = ""有什么意义?
Erase A 清除数组?
希望高手能帮助小弟解释一下。 展开
Private Sub Command1_Click()
Text1.Text = ""
Dim s As Long, i As Long
Dim A()
Do
ReDim Preserve A(s)
A(s) = InputBox("请输入字符串", "输入空串时结束", "输入")
s = s + 1
Loop Until A(s - 1) = ""
For i = 0 To s - 2
Text1.Text = Text1.Text & "第" & CStr(i + 1) & " 个是:" & CStr(A(i)) & ""
Next i
Erase A
End Sub
疑问:Dim A()和ReDim Preserve A(s)是不是定义重复了?
s = s + 1的意义是什么?S的值是多少?
Loop Until A(s - 1) = ""直到A(s - 1) = ""有什么意义?
Erase A 清除数组?
希望高手能帮助小弟解释一下。 展开
展开全部
如果a()里面已经包含有部分数组元素,此时再用preserve重新定义数组边界,会自动保留以前的数据,否则以前的数据会消失。
s=s+1意思是把右边的值赋予左边的变量,不要按照相等的逻辑去理解,要按照将右边的值赋给左边的变量思维去理解
直到A(s-1)=”“,意思就是每次循环结束后都要判断A(S-1)的值是否为空,是的话就结束循环,否则继续。
erase a是将数组每个元素设为 Empty
s=s+1意思是把右边的值赋予左边的变量,不要按照相等的逻辑去理解,要按照将右边的值赋给左边的变量思维去理解
直到A(s-1)=”“,意思就是每次循环结束后都要判断A(S-1)的值是否为空,是的话就结束循环,否则继续。
erase a是将数组每个元素设为 Empty
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ReDim Preserve A(s) 重定义数组A,关键字Preserve限制只修改数组的最大下标
s=s+1,s累加,s的初始值为0,运行一次DO循环后,s=1
Loop Until A(s - 1) = "" ,用来判断是否输入的是否是空串,是空串则结束循环
Erase A 清除数组A,注意:
固定数值数组 将每个元素设置为 0。
固定字符串数组 将每个元素设置为零长度字符串 ("")。
对象数组 将每个元素设置为特殊值 Nothing。
s=s+1,s累加,s的初始值为0,运行一次DO循环后,s=1
Loop Until A(s - 1) = "" ,用来判断是否输入的是否是空串,是空串则结束循环
Erase A 清除数组A,注意:
固定数值数组 将每个元素设置为 0。
固定字符串数组 将每个元素设置为零长度字符串 ("")。
对象数组 将每个元素设置为特殊值 Nothing。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Do
ReDim Preserve A(s)
A(s) = InputBox("请输入字符串", "输入空串时结束", "输入")
s = s + 1
Loop Until A(s - 1) = ""
这个时候你的s还是未知数,肯定提示错误。
ReDim Preserve A(s)
A(s) = InputBox("请输入字符串", "输入空串时结束", "输入")
s = s + 1
Loop Until A(s - 1) = ""
这个时候你的s还是未知数,肯定提示错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
s=s+1是将变量S加1后再赋值给变量S
LOOP是个循环语句。
LOOP是个循环语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询