Io Fortran:如何从文件读取数组

Io Fortran:如何从文件读取数组,io,fortran,fortran90,fortran77,fortran95,Io,Fortran,Fortran90,Fortran77,Fortran95,我正在尝试将整数从文件读取到数组。但是我在运行程序时出错了 PROGRAM MINTEM INTEGER TEMP(4,7), I, J, MINIMUM, CURRENT OPEN(UNIT=1, FILE='temps.dat') READ (1,*) ((TEMP(I,J),J=1,7),I=1,4) MINIMUM = TEMP(1,1) DO I = 1,4 DO J = 1,7 IF (TEMP(I,J) < MINIMUM) THEN

我正在尝试将整数从文件读取到数组。但是我在运行程序时出错了

PROGRAM MINTEM

INTEGER TEMP(4,7), I, J, MINIMUM, CURRENT

OPEN(UNIT=1, FILE='temps.dat')
READ (1,*) ((TEMP(I,J),J=1,7),I=1,4)

MINIMUM = TEMP(1,1)
DO I = 1,4
    DO J = 1,7
        IF (TEMP(I,J) < MINIMUM) THEN
            MINIMUM = TEMP(I,J)
        END IF
    END DO
END DO


PRINT *, "MINIMUM TEMPERATURE = ", MINIMUM
END PROGRAM MINTEM

您提供的文件可以通过以下方式读取:

integer, allocatable :: t(:)
open(1,file='temp.dat')
read(1,*) N   ! your first line with 22
allocate( t(N-1) )  ! further on you only have 21 elements
read(1,*)t          ! so, read them in 
print*, t
deallocate(t)
close(1)

目前,您似乎正在尝试读取4*7=28个元素
integer, allocatable :: t(:)
open(1,file='temp.dat')
read(1,*) N   ! your first line with 22
allocate( t(N-1) )  ! further on you only have 21 elements
read(1,*)t          ! so, read them in 
print*, t
deallocate(t)
close(1)