Fortran Coder

查看: 18004|回复: 6
打印 上一主题 下一主题

[求助] 运行后出现runtime error

[复制链接]

57

帖子

15

主题

0

精华

熟手

F 币
242 元
贡献
166 点
跳转到指定楼层
楼主
发表于 2020-2-21 14:55:32 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
麻烦高手们帮我看一下,运行后出现Fortran runtime error,不知道哪里出错了
[Fortran] 纯文本查看 复制代码
Program main
Integer,parameter :: length=1000
integer i
real d
Character(LEN=length) A,B,Filename
Integer(kind=4)::Column, Row, K,L
real , allocatable :: c( : , : )
Column=0;Row=0;K=0;L=1;filename="ztzl-1.txt"
Open (55,file=Filename)
Read(55,'(A)') A
Do I=1, length
  If(A(I:I)==','.or.A(I:I)==' ') then
    If(I-1>=L)  Column=Column+1
    L=I+1
  End if
End do
CLOSE(55)
Open (55,file=Filename)
Do
  Read(55,*,iostat=k) B
   If( k /= 0 ) Exit
       Row = Row + 1
End Do 
Write(*,"(A5,I6,5X,A7,I2)") "Row=",Row,"Column=",Column!读取行数
allocate(c(15,row))
Do i = 1,Row
  read(55,*) d,c(:,1)
End Do
Close(55)!将数据转化为数组
end
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

57

帖子

15

主题

0

精华

熟手

F 币
242 元
贡献
166 点
沙发
 楼主| 发表于 2020-2-22 09:48:16 | 显示全部楼层
fcode 发表于 2020-2-21 17:14
请给出输入文件,以便判断问题。

您好,这是文件

ztzl-1.txt

984.05 KB, 下载次数: 1

57

帖子

15

主题

0

精华

熟手

F 币
242 元
贡献
166 点
板凳
 楼主| 发表于 2020-2-22 10:12:22 | 显示全部楼层
fcode 发表于 2020-2-21 17:19
试试
allocate(c(15,row))
改为

而且我这个中间是用tab间隔符隔开的,他的列应该是有15列,但是输出来是1

57

帖子

15

主题

0

精华

熟手

F 币
242 元
贡献
166 点
地板
 楼主| 发表于 2020-2-22 14:02:37 | 显示全部楼层
fcode 发表于 2020-2-22 13:27
[mw_shl_code=fortran,true]Program main
  Integer,parameter :: length=1000
  integer i

太谢谢您了
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-3 22:04

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表