ASP 的一个简单问题(初学者)

来源:百度知道 编辑:UC知道 时间:2024/05/31 23:03:57
<%
dim a(1)
for i= 0 to 6
a(i)=i+1
next
for i= 0 to 6
b =b+a(i)+1
next
response.write b
%>

输出结果:5

我就是不明白。
希望哪位朋友给我解释一下。
希望可以详细点。

Microsoft VBScript 运行时错误 (0x800A0009)
下标越界: 'i'
----------------------
你的代码有问题啊,dim a(1)数组只有2个值,下标越界:

把dim a(1) 改成 dim a(6) 才能运行....结果是35

运行过程:
a(0)=0+1=1
a(1)=1+1=2
a(2)=2+1=3
a(3)=3+1=4
a(4)=4+1=5
a(5)=5+1=6
a(6)=6+1=7
b=0+a(0)+1=2
b=2+a(1)+1=5
b=5+a(2)+1=9
b=9+a(3)+1=14
b=14+a(4)+1=20
b=20+a(5)+1=27
b=27+a(6)+1=35
35

查看运行过程的asp代码为:
--------
<%
dim a(6)
for i= 0 to 6
a(i)=i+1
response.write "a("&i&")="&i&"+1="&a(i)&"<br>"
next
for i= 0 to 6

b =b+a(i)+1
response.write "b="&b-a(i)-1 &"+a("&i&")+1="&b&"<br>"
next
response.write b
%>

dim a(1) 定义的下标个数不对, 下面循环中 a下标溢出