Bensun 发表于 2019-1-18 22:53:07

Fortran DO 循环语法错误

       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)
请问,哪位有这方面的经验,上述程序如何修改,谢谢!

Jackdaw 发表于 2019-1-19 20:49:14

这逻辑上是有冲突的,首先n是循环变量,有指定的变化范围;然后循环体内,又要对n进行赋值。
你可以单独定义一个变量代替n
integer :: newVar
do n = 1, num_train
         read(1,210) newVar,(train(newVar,i),i=1,num_in)
end do
页: [1]
查看完整版本: Fortran DO 循环语法错误