fortran移动数据问题有n个整数,编程序将前面的各个数依次向后移动k个位置,最后k个数移到最前面的k个位置如:n=8,k=3移动前:1 2 3 4 5 6 7 8移动后:6 7 8 1 2 3 4 5

问题描述:

fortran移动数据问题
有n个整数,编程序将前面的各个数依次向后移动k个位置,最后k个数移到最前面的k个位置如:n=8,k=3
移动前:1 2 3 4 5 6 7 8
移动后:6 7 8 1 2 3 4 5

下面的代码我没运行过,大概就这么编,有错误自己改改吧
program main
integer,parameter::n=8,k=3
integer,dimension(n)::d1,d2
open (1,file=’数据.txt’)
do i=1,n
read(1,*) d1(i)
enddo
close(1)
do i=1,k
d2(i)=d1(n-k+i)
enddo
do i=k+1,n
d2(i)=d1(i-k)
enddo
do i=1,n
write(*,*) d2(i)
enddo
end