主题:新手求助,do循环问题
七区902
[专家分:0] 发布于 2010-06-30 13:11:00
我要用fortran77读入一个TXT文件,txt文件类型大致如下:
year co2
1960 340
1961 341
1962 342
。。 。。
。。 。。
。。 。。
行数不知,问怎么将文件数据读入啊?最后的最好是co2(year),这是一program里面的子程序,读入后,怎么提取出co2(year)啊?
我是一个新手,敬请各位前辈指教,不胜感激,谢谢![color=000000][/color]
注:是fortran 77语言
回复列表 (共8个回复)
沙发
asymptotic [专家分:16630] 发布于 2010-06-30 15:45:00
新手何必学 Fortran 77 呢?怎么着也要从 Fortran 95 学起呀。
板凳
七区902 [专家分:0] 发布于 2010-07-05 00:22:00
呵呵,我用到了一个模型,是用fortran77编的,没办法啊!谢谢关注。
3 楼
asymptotic [专家分:16630] 发布于 2010-07-05 07:40:00
Fortran 77 和 Fortran 90 及以后语言编写的 源代码 可以放在同一个 workspace 中呀。
4 楼
甜甜薇笑 [专家分:30] 发布于 2010-07-12 02:52:00
解决方法:修改MIR200目录下的setup.txt文件里的goto循环次数.ScriptGotoCountLimit=10;默认是10次,如果循环次数多的话把10改为10000。数值越高越好``自己试吧~一般1万就可以了
5 楼
cgl_lgs [专家分:21040] 发布于 2010-07-12 11:16:00
晕,咋灌水的也给分儿啊。。。
其实你可以先申请一个文件大小/10的数组,然后再读取便可。
不过F77是没有动态内存分配的。
如果你只是必须使用固定格式,那还是可以用F90/95的:)
6 楼
微笑小丑怪 [专家分:30] 发布于 2010-07-12 21:14:00
只要i4在主程序跟程序不是指向同一个东西(没有传递进去)就不会.
7 楼
小猪快跑哎呦 [专家分:20] 发布于 2010-07-12 21:16:00
新手何必学Fortran 77呢?怎么着也要从Fortran 95学起呀。
8 楼
xiaojiang311 [专家分:0] 发布于 2010-08-01 22:52:00
在你的
open(10,file="*")
do while(.true.)
read(10,*,end=150) a,b
end do
150 close(10)
注释行150 这样可以解决代码未知,你中间加个计数器就知道有多少行了,如果要取出 特定的还可以把a,b设置成数组
我来回复