The conceptual ordering of array elements is useful for defining the order in which array elements are output. If A is a 2D array then:
PRINT*, A
would produce output in the order:
A(1,1),A(2,1),A(3,1),..,A(1,2),A(2,2),..
READ*, A
would assign to the elements in the above order.
This order could be changed by using intrinsic functions such as RESHAPE, TRANSPOSE or CSHIFT.
For more information, click here