Fortran Coder

查看: 302|回复: 1

[流程控制] Fortran DO 循环语法错误

[复制链接]

1

帖子

1

主题

0

精华

新人

F 币
25 元
贡献
11 点
发表于 2019-1-18 22:53:07 | 显示全部楼层 |阅读模式
       do n = 1, num_train
         read(1,210) n,(train(n,i),i=1,num_in)
       end do
上述程序语句在编译过程当中,提示,语法错误如下:Error: Variable 'n' at (1) cannot be redefined inside loop beginning at (2)
请问,哪位有这方面的经验,上述程序如何修改,谢谢!

回复

使用道具 举报

53

帖子

7

主题

0

精华

专家

超凡脱俗

F 币
385 元
贡献
203 点
发表于 2019-1-19 20:49:14 | 显示全部楼层
这逻辑上是有冲突的,首先n是循环变量,有指定的变化范围;然后循环体内,又要对n进行赋值。
你可以单独定义一个变量代替n
[Fortran] 纯文本查看 复制代码
integer :: newVar
do n = 1, num_train
         read(1,210) newVar,(train(newVar,i),i=1,num_in)
end do
天下英雄出我辈,一入江湖岁月催。

鸿图霸业谈笑间,不胜人生一场醉。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2019-7-16 07:56

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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