24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1372  |  回复: 14
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

sunbit

铁虫 (小有名气)

[求助] 郁闷了啊,最简单的读写,但是总报错,compaq visual fortran6.5

郁闷了啊,最简单的读写,但是总报错,compaq visual fortran6.5

报错内容
forrtl: severe (59): list-directed I/O syntax error, unit 10, file E:\matlab\lun
wen\fortran\dat1.txt
Image              PC        Routine            Line        Source
test.exe           00407B49  Unknown               Unknown  Unknown
test.exe           0040797B  Unknown               Unknown  Unknown
test.exe           00406B84  Unknown               Unknown  Unknown
test.exe           00406FB9  Unknown               Unknown  Unknown
test.exe           0040460B  Unknown               Unknown  Unknown
test.exe           00404023  Unknown               Unknown  Unknown
test.exe           0040110B  Unknown               Unknown  Unknown
test.exe           0042E5D9  Unknown               Unknown  Unknown
test.exe           00423DB4  Unknown               Unknown  Unknown
kernel32.dll       7C817077  Unknown               Unknown  Unknown

Incrementally linked image--PC correlation disabled.
Press any key to continue

主程序
CODE:
           program main

                REAL:: A(100)
                INTEGER::I,N
                N=9   
                OPEN(10,FILE='dat1.txt')
                DO I=1,N
                        READ(10,*) A(I)
                ENDDO
                CLOSE(10)
                END

dat1.txt文件
CODE:
2.5
0.25
1
0
1
6
0,0
1,0
1,1

回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

whl2dxl

木虫 (小有名气)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢参与…… 2011-04-24 17:57:14
你的那个程序的第7到第9行,是点还是逗号?如果是逗号的话肯定会出现数据类型定义的错误,正如你说的改成字符型就可以读取,可能就是这个原因,最后三行不是real型。如果想读这种混合的类型最好做两次do循环比较稳妥一点。即
real :: A(6),B(3)
do i=1,6
read(10,*) A(i)
end do
do i=7,9
read(10,*) A(i),B(i)
end do
4楼2011-04-24 00:45:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 15 个回答

sunbit

铁虫 (小有名气)

主程序由   READ(10,*) A(I)
改为   READ(10,“(A)”) A(I)
之后,程序通过


由此,产生两个疑问,
1. txt格式的数据,只能作为字符型读入?读入后怎么转变为实数型的?用real()函数?编译通不过

2.如何才能直接读入txt中 实数型的数据?txt中输入的数据有格式要求?
2楼2011-04-22 23:16:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢…… 2011-04-23 17:28:16
sunbit(金币+1): 只能给一分啊! 谢谢~ 2011-04-25 10:07:18
你的程序没有问题,我这里用 gfortran 测试通过,呵呵……
3楼2011-04-23 00:12:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★ ★
微尘、梦想(金币+2): 谢谢! 2011-04-24 17:57:29
引用回帖:
Originally posted by whl2dxl at 2011-04-24 00:45:42:
你的那个程序的第7到第9行,是点还是逗号?如果是逗号的话肯定会出现数据类型定义的错误,正如你说的改成字符型就可以读取,可能就是这个原因,最后三行不是real型。如果想读这种混合的类型最好做两次do循环比较稳 ...

他那种读法,只管读数的个数,与多少行没有关系……
5楼2011-04-24 15:06:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见