下标越界怎么办,跪求高手

PrivateSubhuazheng(m1,n1)DimiAsDoubleDimjAsIntegeri=Val(Text1.Text)m1=1n1=Mid(i,3)For... Private Sub huazheng(m1, n1)
Dim i As Double
Dim j As Integer
i = Val(Text1.Text)
m1 = 1
n1 = Mid(i, 3)
For j = 1 To Len(n1)
m1 = m1 & "0"
Next
End Sub

Private Sub Command1_Click()
Dim x_array(), f_array(), m_array()
Static j
Dim m, n As Long
Dim r As Long
Dim x As Integer, y As Integer, k As Integer
Call huazheng(m, n)
Print "m="; m; ",n="; n
Do
ReDim Preserve x_array(j)
x = m \ n
x_array(j) = x
j = j + 1
r = m Mod n
m = n
n = r
Loop While (r <> 0)
Print "j="; j
Print Join(x_array, ",")
ReDim f_array(j)
ReDim m_array(j)
f_array(0) = x_array(0) * 0 + 1
f_array(1) = x_array(1) * f_array(0) + 0
m_array(0) = x_array(0) * 1 + 0
m_array(1) = x_array(1) * m_array(0) + 1
For k = 0 To j

f_array(k) = x_array(k) * f_array(k - 1) + f_array(k - 2)
m_array(k) = x_array(k) * m_array(k - 1) + m_array(k - 2)
Next k

Print Join(m_array, ",")

End Sub
展开
 我来答
angeljinjin216
2010-08-17 · TA获得超过196个赞
知道小有建树答主
回答量:252
采纳率:100%
帮助的人:101万
展开全部
当k=0时,f_array(k-1)不就变成f_array(-1),而你的数组的初始下标为0,所以说下标越界啊
百度网友30cc6ab
2010-08-17 · TA获得超过574个赞
知道小有建树答主
回答量:1336
采纳率:0%
帮助的人:853万
展开全部
一般循环的最后一次要注意,最后一次的下标一般都越界。注意检查
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式