program main
implicit none
integer,parameter :: number=160
integer,parameter :: lanzhou=138
integer,parameter :: byear=1951!the beginning
integer,parameter :: cyear=2017! the current
integer,parameter :: time=cyear - byear+1
integer,dimension(number, time) :: it
integer :: i,j,k
character(len=10),dimension(12) :: month
data month /"Jan", "Feb", "Mar", "Apr", "May", "Jun", &
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"/
do k=1,12,1
open(11,file="./temperature/"//trim(month(k))//".txt")
read(11,*) ((it(i,j), i=1,number),j=1,time)
open(12,file="./temperature/"//trim(month(k))//"lanzhou.txt")
write(12,"(2i5)") (i,it(lanzhou,i),i=1,time)
close(11)
close(12)
end do
end program main
write的fmt应该也是如此逻辑。