设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 84|回复: 5
打印 上一主题 下一主题

ASP新手问题---循环问题

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-9 05:38:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
dim a(6)
for i=0 to 6
a(i)=i+1
next
for i=0 to 6
count=count+a(i)+1
next
response.write count
------------------------------------
请问下这段代码的结果为什么是35的呢?我想问下的是,
count  好像没有定义也没有付值,怎么与a(i)+1相加的呢?初学者真的不太明白,很不好意思麻烦大家抽点时间解释一下,真的感谢!谢谢能把代码详细解释下 谢谢!
2#
发表于 2010-1-9 05:38:45 | 只看该作者
在asp里,规则上是需要定义的,但不定义也不会出错
count 在这里属于自定义 也就是说 可以是 abc 或者 efg 任何的自己定义的字母
比如你可以写成
dim a(6)
for i=0 to 6
a(i)=i+1
next
for i=0 to 6
abc=abc+a(i)+1
next
response.write abc
这样同样也是可以的

for i=0 to 6
a(i)=i+1
next
这个的循环出来看就是这样的 1 2 3 4 5 6 7

for i=0 to 6
abc=abc+a(i)+1
next
这个循环出来看就是这样的 2 3 4 5 6 7 8

可以看出,35的数字是后面的循环数字相加的总和 2+3+4+5+6+7+8=35
那这个循环数字又是如何得出的呢,就是上一个循环数字得来的
我们来看看上面每一个循环都付值给变量 a(i) 一共有7个付值循环变量
直观的看就是这样的形式
0-6之间数字循环,一共循环7次
a(i)=0+1 '相当于a(i)=1
a(i)=1+1 '相当于a(i)=2
a(i)=2+1 '相当于a(i)=3
a(i)=3+1 '相当于a(i)=4
a(i)=4+1 '相当于a(i)=5
a(i)=5+1 '相当于a(i)=6
a(i)=6+1 '相当于a(i)=7

而下面的循环
for i=0 to 6
abc=abc+a(i)+1
next
里的abc=abc+a(i)+1中的a(i)就是以上循环付值的变量,在这里的循环我们直观的看出是这样的
将上面的1-7之间的数字进行0-6之间的循环,一共循环7次
abc=abc+a(i)+1
abc=1+1 (因为abc+a(i)+1中的abc没有值,那就等于是1+1)
abc=abc+2+1 (abc=2+2+1 这里的abc=5)
abc=abc+3+1 (abc=5+3+1 这里的abc=9)
abc=abc+4+1 (abc=9+4+1 这里的abc=14)
abc=abc+5+1 (abc=14+5+1 这里的abc=20)
abc=abc+6+1 (abc=20+6+1 这里的abc=27)
abc=abc+7+1 (abc=27+7+1 这里的abc=35)
最终结果,最后的abc=35,这样就是一路垒加下来的
这个执行过程就是这样执行的
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-9 05:38:49 | 只看该作者
谢谢! 真的很谢谢!版主真好!
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-9 05:38:53 | 只看该作者
版主分析得很详细了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 12:15 , Processed in 0.113151 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表