24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 1962  |  回复: 12
本帖产生 2 个 程序强帖 ,点击这里进行查看

77585218358

金虫 (正式写手)


[交流] 【求助】求高手关于Fortran数据读写的问题。【已完结】

现在有如下的数据,我想把C1 和C2 行对应的三个数值读写出来,如何操作?小弟fortran很菜,跪求高手解答。
HT         -1.895  10.573  85.302
C1         -1.046  10.149  85.861
C2         -0.291  11.243  86.620
H1C       -0.394   9.635  85.137
H2C       -1.447   9.397  86.558
H1C       -0.994  11.727  87.322
H2C        0.028  12.029  85.913
C1          0.934  10.743  87.400
C2          2.100  10.268  86.522
H1C        0.630   9.929  88.082
H2C        1.300  11.563  88.045
H1C        2.365  11.070  85.810
H2C        1.783   9.403  85.915
C1          3.336   9.882  87.343
C2          4.495   9.311  86.511
H1C        3.042   9.128  88.095
H2C        3.686  10.760  87.914
H1C        4.139   8.415  85.976
H2C        5.287   8.958  87.196
C1          5.113  10.268  85.478
C2          5.692  11.575  86.043
H1C        4.357  10.510  84.711
H2C        5.918   9.729  84.946
H1C        4.883  12.193  86.469
H2C        6.116  12.158  85.205
C1          6.782  11.365  87.101
C2          7.480  12.671  87.503
H1C        7.529  10.654  86.706
H2C        6.344  10.894  87.999
H1C        6.719  13.397  87.840
H2C        7.954  13.116  86.609
C1          8.536  12.510  88.609
C2          9.640  11.481  88.312
H1C        8.028  12.229  89.550

[ Last edited by 余泽成 on 2010-12-6 at 15:16 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

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

ykwang

金虫 (正式写手)



77585218358(金币+10): 2010-12-01 14:32:50
余泽成(金币+1):谢谢参与应助! 2010-12-06 15:15:50
zyj8119(程序强帖+1): 2010-12-14 18:04:03
你需要的程序片段如下:

          Dimension C1(3,100),C2(3,100)
          Character  CHS*80
          J1=0
          J2=0
10       READ(10,'(A)',END=20)CHS
          IF(CHS(1:2).EQ.'C1')THEN
               J1=J1+1
               IF(J1.GT.100)STOP 'Error Message .......'
               READ(CHS(3:80),*)(C1(I,J1),I=1.3)
           ENDIF
           IF(CHS(1:2).EQ.'C2')THEN
               J2=J2+1
               IF(J2.GT.100)STOP 'Error Message .......'
               READ(CHS(3:80),*)(C2(I,J2),I=1.3)
           ENDIF
           GOTO 10
20       CONTINUE
2楼2010-12-01 10:30:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

77585218358(金币+10): 2010-12-01 14:32:59
余泽成(金币+1):谢谢参与应助! 2010-12-06 15:15:59
zyj8119(程序强帖+1): 2010-12-14 18:03:44
一个简单的实现
CODE:
C234567
      PROGRAM C1C2
      CHARACTER*80 LINE
      OPEN(7,FILE = 'A.TXT', STATUS='OLD')
      OPEN(8,FILE = 'B.TXT', STATUS='NEW')
5     READ(7,'(A)', END = 10) LINE
      IF( INDEX(LINE, 'C1') .NE. 0 .OR. INDEX(LINE, 'C2') .NE. 0)
     &  WRITE(8, '(A)') LINE
      GOTO 5
10    CONTINUE
      END

3楼2010-12-01 10:37:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

piduil

铜虫 (初入文坛)



77585218358(金币+3): 2010-12-01 14:33:14
77585218358(金币+3): 2010-12-01 14:35:45
余泽成(金币+1):谢谢参与应助! 2010-12-06 15:16:10
ykwang的程序估计是楼主想要的
但文件10在你的程序中没有定义,fortran菜鸟会搞不定的。
此外,如果输入文件中有C1C打头之类的行,会出错的。
4楼2010-12-01 13:10:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

77585218358

金虫 (正式写手)


引用回帖:
Originally posted by piduil at 2010-12-01 13:10:05:
ykwang的程序估计是楼主想要的
但文件10在你的程序中没有定义,fortran菜鸟会搞不定的。
此外,如果输入文件中有C1C打头之类的行,会出错的。

你的意思是应该定义打开数据文件的通道10,是不是?
5楼2010-12-01 14:38:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by 77585218358 at 2010-12-01 14:38:04:

你的意思是应该定义打开数据文件的通道10,是不是?

就象我的那个那样,open(10,.....)
6楼2010-12-01 14:54:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

piduil

铜虫 (初入文坛)


为什么非要用fortran来干这个事情呢?
我觉得干这个并不是fortran的特长,把你的需求说完整了,也许有更好的解决方案。
7楼2010-12-01 15:31:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
Fortran 干这种事情还是绰绰有余的,呵呵……
8楼2010-12-01 15:37:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

77585218358

金虫 (正式写手)


引用回帖:
Originally posted by piduil at 2010-12-01 15:31:47:
为什么非要用fortran来干这个事情呢?
我觉得干这个并不是fortran的特长,把你的需求说完整了,也许有更好的解决方案。

已经解决了!
9楼2010-12-02 14:39:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kathy2008

木虫 (正式写手)



小木虫(金币+0.5):给个红包,谢谢回帖
引用回帖:
Originally posted by snoopyzhao at 2010-12-01 10:37:01:
一个简单的实现

[code]
C234567
      PROGRAM C1C2
      CHARACTER*80 LINE
      OPEN(7,FILE = 'A.TXT', STATUS='OLD')
      OPEN(8,FILE = 'B.TXT', STATUS='NEW')
5     READ(7,'(A)', END = 10) ...

版主你好,我试了一下你这一个程序,用gfortran,提示的错误是
In file bbs3.f90:6

      IF( INDEX(LINE, 'C1') .NE. 0 .OR. INDEX(LINE, 'C2') .NE. 0 )
                                                                 1
Error: Unclassifiable statement in IF-clause at (1)

请指点。谢谢。
10楼2011-05-12 09:58:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
余泽成(金币+2): 谢谢参与应助! 2011-05-12 18:53:25
引用回帖:
Originally posted by kathy2008 at 2011-05-12 09:58:10:
版主你好,我试了一下你这一个程序,用gfortran,提示的错误是
In file bbs3.f90:6

      IF( INDEX(LINE, 'C1') .NE. 0 .OR. INDEX(LINE, 'C2') .NE. 0 )
                                           ...

我这里的是个 Fortran 77 的程序,续行符在前,你用 Fortran 90 的话,得把续行符放在上一行的后面吧……
11楼2011-05-12 10:09:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kathy2008

木虫 (正式写手)



小木虫(金币+0.5):给个红包,谢谢回帖
引用回帖:
Originally posted by snoopyzhao at 2011-05-12 10:09:40:
我这里的是个 Fortran 77 的程序,续行符在前,你用 Fortran 90 的话,得把续行符放在上一行的后面吧……

多谢版主。已解决。
12楼2011-05-12 10:16:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
余泽成(金币+2): 其实真的想让你加入我们版主管理团队,不知专家是不是有这个意愿! 2011-05-12 18:54:11
引用回帖:
Originally posted by kathy2008 at 2011-05-12 10:16:07:
多谢版主。已解决。

俺不是版主,呵呵……
13楼2011-05-12 10:16:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 77585218358 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 求调剂 +12 何气正 2026-04-13 13/650 2026-04-14 14:47 by zs92450
[考研] 一志愿哈工大 085600 277 12材科基求调剂 5+5 chenny174 2026-04-10 37/1850 2026-04-14 07:39 by Abskk
[考研] B区0809 ,数一英一,290 求调剂 +3 泠潍1111 2026-04-12 4/200 2026-04-13 20:35 by 学员JpLReM
[考研] 302求调剂 +10 易!? 2026-04-13 10/500 2026-04-13 19:04 by lbsjt
[基金申请] 有爆料,一个青年教师卖房得400万,然后换了一个四青帽子 +11 babu2015 2026-04-08 11/550 2026-04-13 16:33 by probebill
[考研] 一志愿华工085600 331分 +7 天下ww 2026-04-09 7/350 2026-04-13 09:01 by lhj2009
[考研] 0831一轮调剂失败求助 +10 小熊睿睿_s 2026-04-11 10/500 2026-04-12 22:43 by 长弓傲
[考研] 电气专硕320求调剂 +6 小麻子111 2026-04-10 6/300 2026-04-12 10:54 by lemon6009
[找工作] 山东高校教师考核超级无底线,员工过不下去啦 +4 qut2026 2026-04-09 9/450 2026-04-12 00:54 by qut2026
[考研] 调剂 +10 只叙离别辞 2026-04-09 12/600 2026-04-11 20:57 by 逆水乘风
[考研] 297求调剂 +9 Kwgyz 2026-04-09 9/450 2026-04-11 10:09 by zhq0425
[考研] 085402通信工程调剂,有4项学科竞赛国奖(电赛国二),硕士研究生调剂自荐信。 +5 m永o不v言o弃m 2026-04-09 5/250 2026-04-11 09:33 by zhq0425
[考研] 346,工科0854求调剂,专硕 +7 moser233 2026-04-10 8/400 2026-04-11 08:52 by 猪会飞
[考研] 本科211 工科085400 280分求调剂 可跨专业 +11 LZH(等待调剂中 2026-04-10 11/550 2026-04-11 08:39 by zhq0425
[考研] 考研调剂 +26 硕星赴 2026-04-09 27/1350 2026-04-10 22:24 by 猪会飞
[考研] 289 分105500药学专硕求调剂(找B区学校) +6 白云123456789 2026-04-09 8/400 2026-04-10 21:13 by zhouxiaoyu
[考研] 一志愿中南大学物理学,英一66,求调剂 +4 长烟旖旎 2026-04-08 5/250 2026-04-10 10:31 by 颖果儿
[考研] 292求调剂 +9 笑笑袁 2026-04-09 9/450 2026-04-10 10:05 by LHGeng
[考研] 调剂 +19 2261744733 2026-04-08 19/950 2026-04-09 19:11 by vgtyfty
[考研] 一志愿中科院105500专业总分315求调剂 +6 lallalh 2026-04-09 7/350 2026-04-09 17:51 by lallalh
信息提示
请填处理意见