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