24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 1964  |  回复: 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 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 367求调剂 +11 hffQAQ 2026-04-09 11/550 2026-04-14 17:48 by lhj2009
[考研] 335求调剂 +19 想上岸呀!! 2026-04-12 21/1050 2026-04-14 16:23 by Art1977
[考研] 一志愿085502,267分求调剂 +19 再忙也要吃饭啊 2026-04-08 20/1000 2026-04-14 16:03 by zs92450
[教师之家] 转长聘了 +7 简单化xn 2026-04-13 7/350 2026-04-14 14:50 by xindong
[考研] 085600材料与化工329分求调剂 +24 叶zilin 2026-04-13 25/1250 2026-04-14 09:20 by 试管破裂
[考研] 求调剂,985材料与化工348分 +9 涵竹刘 2026-04-11 14/700 2026-04-13 22:26 by 涵竹刘
[考研] 材料复试求调剂 +24 xhhdjdjsjks 2026-04-09 24/1200 2026-04-13 15:49 by 幸免 ..
[考研] 一志愿厦大生物学332求调剂 +11 池池池池池池 2026-04-08 11/550 2026-04-13 14:10 by 科研论
[考研] 电气工程专硕320求调剂 +5 小麻子111 2026-04-10 5/250 2026-04-12 10:47 by zhouyuwinner
[考研] 材料与化工300求调剂 +39 肖开文 2026-04-09 43/2150 2026-04-12 01:30 by 秋豆菜芽
[考研] 一志愿厦大0856,306求调剂 +15 Bblinging 2026-04-11 15/750 2026-04-11 22:53 by 314126402
[考研] 085501机械专硕 302分 不挑专业求调剂 +7 汪某. 2026-04-09 7/350 2026-04-11 14:37 by luhong1990
[考研] 工科273调剂 +6 X1999 2026-04-09 7/350 2026-04-11 10:23 by zhq0425
[考研] 293求调剂 +6 勇远库爱314 2026-04-08 6/300 2026-04-11 10:08 by zhq0425
[考研] 311求调剂 +13 xyp想读书 2026-04-10 14/700 2026-04-11 09:41 by 猪会飞
[考研] 284求调剂 +12 archer.. 2026-04-10 13/650 2026-04-11 08:44 by zhq0425
[考研] 298求调剂 +13 钉叮咚冬瓜 2026-04-09 13/650 2026-04-10 15:49 by jiajinhpu
[考研] 085800 能源动力求调剂 +6 阿biu啊啊啊啊啊 2026-04-10 6/300 2026-04-10 15:03 by hemengdong
[考研] 调剂申请086000一志愿西北农林科技大学生物与医药320分-本科齐鲁工业大学 +3 美美女士 2026-04-09 3/150 2026-04-10 10:31 by liuhuiying09
[考研] 本科211 工科085400 280分求调剂 可跨专业 +3 LZH(等待调剂中 2026-04-09 3/150 2026-04-09 21:29 by wutongshun
信息提示
请填处理意见