说明:在fortran中读入数据出错,希望应助者能够运行下我的程序和数据文件,如果成功得到结果再应答,谢谢!
本程序段是为了从point_intact.dat文件中读入数据放入数组NM,然后在屏幕上显示读入的数据有没有错,调试的时候发生了错误,我查了下,应该是txt文件中数据格式的问题,希望得到大家的帮助。
程序如下(截取了解决问题所需部分的程序)
ROGRAM flow_sphere
!*********************************************************
!目的:圆球绕流流场计算,取四分之一区域
!*********************************************************
IMPLICIT NONE
!***********相关变量定义*************
INTEGER :: I,J
INTEGER, PARAMETER :: NE=2240 !单元数
INTEGER, DIMENSION(NE,3):: NM !各单元节点的总体序号
!********************************************************
! 数据准备:读取数据,存储数据
!********************************************************
OPEN(21,file='point_intact.dat',status='old')
DO I=1,NE
DO J=1,3
READ(21,*) NM(I,J)
END DO
END DO
DO J=1,3
DO I=1,NE
WRITE(*,*) NM(I,J)
END DO
END DO
close (21)
END PROGRAM
补充:运行之后提示我end of file ,但是我查了下循环的行数和给的数据是对应的,都是2240行,不知道怎么会有这个提示。![]()
QQ截图20130508163931.png
补充,如果我把
DO I=1,NE
DO J=1,3
READ(21,*) NM(I,J)
END DO
END DO
写成do i=1,ne
read(21,*)nm(i,1),nm(i,2),nm(i,3)
这样写了以后减少一层循环,读取就没问题了,请问下,这又是什么原因啊,还是fortran在这方面有硬伤?
[ Last edited by zengkehl on 2013-5-8 at 18:20 ] |