在VB中 for 循环嵌套语句的用法语解释(必须清楚!!)
谢谢!!
在VB中 for 循环嵌套语句的用法语解释(必须清楚!!)
谢谢!!
格式:
For<循环变量>=<初值>To<终值>[Step步长]
<循环体>
[Exit For]
Next<循环变量>
功能:
当循环变量的值在初值到终值范围内时,执行一次循环体中的语句块,并使初值增加一个步长。当循环变量的值不在初值到终值范围内时,就退出循环,执行Next后面的语句。For循环语句执行的流程图。
说明:
(1)<循环变量>:也称循环控制变量,它是一个数值变量,但不能是布尔或数组元素。
(2)<初值>、<终值>和<步长>:它们是一个数值表达式。 步长为正数时,表示递增循环;步长为负数时,表示递减循环,但不能为o。Step的缺省值为l。
(3)<循环体>:在For语句和Next语句之间的语句序列,可以是一个或多个语句。
(4)[Exit For]:如果有此可选项时,退出循环。
(5)Next:是循环终端语句,在Next后面的循环变量与For语句中的循环变量必须相同。当只有一层循环时,Next后面的循环变量可略去不写。
(6)For语句又叫做循环说明语句,用来指定循环变量的名称,以及循环变量的初值、终值和步长;循环体是被反复执行的部分(即循环工作部分),它可以由若干条语句所组成;Next,语句又叫做循环终端语句,其作用是改变循环变量的值(即增加一个步长)并控制是否再次执行循环体。
(7)循环执行的次数: n=Int((终值一初值)/步长)+1
(8)For—Next语句可以嵌套使用,嵌套的层数没有限制,其基本要求是:每个循环只有一个惟一的变量作为循环变量;内层循环变量的Next语句必须放在上层循环变量的Next语句之前。
FOR I = 1 TO 5
X = 4
FOR J = 1 TO 4
X = 3
FOR K = 1 TO 3
X = X + 6
NEXT K
NEXT J
NEXT I
PRINT X
在循环语句中首先都是从外循环到内循环的
程序同样也是一个语句一个语句执行下来的。
首先你可以看到结果肯定是15,为什么会是这样,我要重申一下,虽然循环是从外到内读取,也是先执行外循环,后执行外循环后执行内循环,直到有循环结束或者遇到结束循环语句
所以肯定是先循环4次I这个循环语句中的内容
而其中又包含了J,所以每次的I循环都必然执行3次的I循环
而I中又包含了K,所以必然每次的J循环都要执行2次的K循环
所以每次执行I循环,必须要产生6个结果
但在这个循环体中,有着相同的运算变量X
变量如果在同一个语句中,会产生运算公式获得的变量是最靠近运算公式的
则X=3
那么在经过K的2次运算后,X=15
所以很明白的可以发现,不管你外循环是什么,他都必须要执行其中的子循环
到最终执行的时候结果也因为子循环的二次定义导致了结果等同
X=15
现在举例了,注意听讲:
形如:
For i=0 to 3
这里面是放置你要执行的代码(比如:Print i)
Next
循环变量是i,初值=0,终值=3,步长也默认为1,循环次数也就是从0到3,为4.
在循环第一圈的时候,i为0,然后执行循环内的代码,当遇见Next后,又在循环.每循环一次,执行一次循环圈内的代码。此时的i为1了,一直这样,遇见Next后就循环回来。当i循环到终值时,也即是i=3后,就退出了循环圈。
for i=1 to 3
for n=1 to 2
s=s+n
next
s=s+i
next
嵌套循环就是先把内循环执行完在执行外循环!
正如上面的代码所示,首先i=1 ,然后n=1 to 3,s=0+1+2+3=6,然后通过next,s=6+i=6+1=7,通过第二个next,i=2,然后n=1 to 2,s=7+1+2+3=13,通过next,s=13+i=13+2=15最后s就是15了!
其实说的好记一点for是一个条件,next的意思就是返回到for那句和for的值加1,这个你可以理解吧。语言都是顺序执行的,next只是返回到它对应的for开头,知道超出for的范围就执行next下面的语句!
用尽量简单的语句来给你解释,如有不理解可以再讨论:
1.for循环的结构为
For 变量的初始值 To 变量的终止值 [变量的变化的步长(可有,也可省略,若省略默认步长为+1)] <循环体> Next 变量值
2.了解了for循环的结构下面来看for循环的执行顺序:
首先判断变量的值是否在变量的初始值与终止值之间,如果在则执行循环体中的语句,当循环体中的语句都执行完了之后然后再执行Next 变量值这一句,这一句就是变量值安照变量的变化的步长改变它的值
好了一次执行过程完毕了,它之所以称之为循环过程,是因为它是一个连续重复执行相同任务的过程,就是执行完一次过程之后,判断变量值是否在变量的初始值与终止值之间,如果在则继续执行循环体中的语句,如果不再了则For循环结构整体运行完毕,继续运行后面的语句(如果还有的话).
3.了解了For循环语句执行的顺序,那么理解for循环的嵌套执行过程就不难了,for循环嵌套的实质实际上就是循环体中的语句又是一个循环体而已,因此按照for 循环执行的顺序来分析,先判断最外边一层循环体的变量值是否在变量的初始值与终止值之间,如果在则执行循环体中的语句,即执行内部的for循环,此时程序进入到内部for循环中,此时暂时与外部没有任何联系了,成为一个单独的整体,从而内部for循环的执行过程也是一个for循环过程,也是先判断这个循环体的变量值是否在变量的初始值与终止值之间,如果在则执行他的循环体中的语句,如果不再了,则这个for运行结束,此时也就是最外层for循环的循环体运行完一次,此时再判断,再执行,如果变量值不在范围内了,就不执行了,两个for循环运行完毕.
好了,解释完了,如有问题可以继续讨论
其实 很简单啊
FOR I = 1 TO 3
这是固定形式 1 和 3 可以任意变 然后 把 I 这个字母 用 从1 到3 也就是 1,2,3 都算一遍就可以了哦
NEXT I