Fortran - 嵌套循环
您可以在任何其他循环构造中使用一个或多个循环构造。 您还可以在循环上放置标签。
语法
iloop: do i = 1, 3 print*, "i: ", i jloop: do j = 1, 3 print*, "j: ", j kloop: do k = 1, 3 print*, "k: ", k end do kloop end do jloop end do iloop
示例
program nestedLoop implicit none integer:: i, j, k iloop: do i = 1, 3 jloop: do j = 1, 3 kloop: do k = 1, 3 print*, "(i, j, k): ", i, j, k end do kloop end do jloop end do iloop end program nestedLoop
当上面的代码被编译并执行时,会产生以下结果 −
(i, j, k): 1 1 1 (i, j, k): 1 1 2 (i, j, k): 1 1 3 (i, j, k): 1 2 1 (i, j, k): 1 2 2 (i, j, k): 1 2 3 (i, j, k): 1 3 1 (i, j, k): 1 3 2 (i, j, k): 1 3 3 (i, j, k): 2 1 1 (i, j, k): 2 1 2 (i, j, k): 2 1 3 (i, j, k): 2 2 1 (i, j, k): 2 2 2 (i, j, k): 2 2 3 (i, j, k): 2 3 1 (i, j, k): 2 3 2 (i, j, k): 2 3 3 (i, j, k): 3 1 1 (i, j, k): 3 1 2 (i, j, k): 3 1 3 (i, j, k): 3 2 1 (i, j, k): 3 2 2 (i, j, k): 3 2 3 (i, j, k): 3 3 1 (i, j, k): 3 3 2 (i, j, k): 3 3 3