当前位置:首页 > 演讲稿 > 【For,循环的两种运行机制】 简述java的两种运行机制
 

【For,循环的两种运行机制】 简述java的两种运行机制

发布时间:2019-06-26 04:04:33 影响了:

  北京师范大学出版社2008年版的普通高中课程标准实验教科书《数学》3(必修)第110页介绍了For循环,并在例题4的流程图中说明了for循环的运行机制。  例4 请阅读下列用For语句写出的算法,说明该算法的处理功能。
  S=0
  T=1
  For i=1 To 20
  S=S+i
  T=T*i
  Next
  输出S
  输出T
  流程图:
  这里的For循环中,使用的是如下的机制:
  1、循环变量赋初值,记录终值及步长值;
  2、执行循环体;
  3、循环变量加步长值;
  4、判断循环变量是否超过终值;若未超过,转至步骤2,执行循环体;若超过,则跳出循环。
  我们权且将其称为机制Ⅰ。
  框图如下:
  实际上,For循环还存在着机制Ⅱ:
  1、循环变量赋初值,记录终值及步长值;
  2、判断循环变量是否超过终值;若未超过,进入步骤3,执行循环体;若超过,则跳出循环;
  3、执行循环体;
  4、循环变量加步长值。
  5、转到步骤2,进行判断。
  框图如下:
  两种运行机制的不同处在于先判断还是先执行循环体。
  机制Ⅰ是先执行循环体,再进行判断,所以循环体至少要执行一次。而机制Ⅱ则不同,它先进行判断,循环变量未超过终值时则执行循环体,一旦发现循环变量超过终值,立即跳出循环。
  下面的Basic程序片段,在不同机制下输出结果就不一样。
  For i = 1 To 0 Step 2
  Print i
  Next i
  使用机制Ⅰ的Basic语言,输出:1
  这是因为它是先执行循环体,再判断,虽然循环变量的初值已超过了终值,但还是先执行了一次循环体中的语句,所以输出1。
  而使用机制Ⅱ的Basic语言,则没有输出。
  这是因为它是先判断,发现循环变量的初值已超过终值,于是跳出循环,没有执行循环体中语句,所以没有输出。
  早期的Basic语言有使用机制Ⅰ的,但现在流行的编程语言一般都使用机制Ⅱ。教参中的程序是用VB语言编写的。也采用机制Ⅱ。然而课本的解释却使用机制Ⅰ,与所用编程语言不符,所以,建议采用机制Ⅱ。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3