Fortran Do 循环语句

do 循环语句可以在给定条件为 true 时迭代执行一条语句或一系列语句。

语法

do 循环的一般形式是:

  1. do var = start, stop [,step]
  2. ! statement(s)
  3. end do
  • 循环变量 var 应该是整数
  • start 是初始值
  • stop 是最终值
  • step 是增量,如果省略此项,则变量 var 将增加 1
实例
  1. ! compute factorials
  2. do n = 1, 10
  3. nfact = nfact * n
  4. ! printing the value of n and its factorial
  5. print*, n, " ", nfact
  6. end do

流程图

这是 do 循环构造的控制流程:

  • 首先执行初始步骤,并且只执行一次。此步骤可以声明和初始化任何循环控制变量。在我们的例子中,变量 var 被初始化为 start
  • 接下来,对条件进行判断。如果为 true,则执行循环体。如果为 false,循环体将不执行,控制流将跳到循环后的下一个语句。在我们的例子中,条件是变量 var 达到其最终值 stop
  • 循环体执行后,控制流跳回到增量语句。此语句允许您更新循环控制变量 var
  • 现在再次判断条件。如果为 true,则执行循环并重复该过程(循环体,然后递增步长,然后再次条件)。条件变为 false 后,循环终止。

实例

此实例打印数字 11 到 20:

  1. program printNum
  2. implicit none
  3. ! define variables
  4. integer :: n
  5. do n = 11, 20
  6. ! printing the value of n
  7. print*, n
  8. end do
  9. end program printNum

结果为:

  1. 11
  2. 12
  3. 13
  4. 14
  5. 15
  6. 16
  7. 17
  8. 18
  9. 19
  10. 20
实例2

此程序计算数字 1 到 10 的阶乘:

  1. program factorial
  2. implicit none
  3. ! define variables
  4. integer :: nfact = 1
  5. integer :: n
  6. ! compute factorials
  7. do n = 1, 10
  8. nfact = nfact * n
  9. ! print values
  10. print*, n, " ", nfact
  11. end do
  12. end program factorial

分类导航