24小时热门版块排行榜    

查看: 1092  |  回复: 9

lchunmei001

木虫 (正式写手)


[交流] 【求助】输入是什么?

请教一下大家,如下这样一个输入片段,到底输入文件应该如何命名?运行总是没有输出。请路过高手帮解答解答,感激不尽!
C--->  INPUT EXPERIMENTAL DATA
       WRITE(*,*)'elem ?'
       READ(*,'(A2)')elem
       WRITE(FILM1,'(4A,2A,3A)')'ab-',elem,'.IN'
       OPEN(1,FILE=FILM1,status='old')
       READ(1,*)
       READ(1,*)
       READ(1,*)a,b,c,d,e,f,g,h
      ..........
回复此楼

» 猜你喜欢

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

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

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
lchunmei001(金币+10): 2011-04-14 08:55:47
引用回帖:
Originally posted by lchunmei001 at 2011-04-13 20:54:37:
请教一下大家,如下这样一个输入片段,到底输入文件应该如何命名?运行总是没有输出。请路过高手帮解答解答,感激不尽!
C--->  INPUT EXPERIMENTAL DATA
       WRITE(*,*)'elem ?'
       READ(*,'(A2)') ...

你这里都是在读取数据,没有输出啊……

C--->  INPUT EXPERIMENTAL DATA
       WRITE(*,*)'elem ?'
上面这行是在屏幕上输出 elem 这样的字符
       READ(*,'(A2)')elem
这里是读入一个长度为2的字符串,即你给 elem 的值
       WRITE(FILM1,'(4A,2A,3A)')'ab-',elem,'.IN'
这里是给一个字符串 film1 赋值,它最终的值是是ab-??.IN,其中??是上一步获得的。但这里好象有点儿问题,应该是'(3A,2A,3A)',也可能是后面 'ab-' 这儿有问题。
       OPEN(1,FILE=FILM1,status='old')
这是打开一个名为 film1,即 ab-??.IN 的文件
       READ(1,*)
读入一行,但其值不被使用
       READ(1,*)
同上
       READ(1,*)a,b,c,d,e,f,g,h
为 a, b, c, d, e, f, g, h 赋值,这些值来自于上面的那个打开的文件……

其实,随便找一本 Fortran 的书,看 I/O 部分的讲解即可……
2楼2011-04-13 22:02:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
注意下面这句没有输出的,虽然用的是 write 函数……

WRITE(FILM1,'(4A,2A,3A)')'ab-',elem,'.IN'
3楼2011-04-13 22:05:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingxb

金虫 (正式写手)


lchunmei001(金币+10): 2011-04-14 08:55:54
引用回帖:
Originally posted by lchunmei001 at 2011-04-13 20:54:37:
请教一下大家,如下这样一个输入片段,到底输入文件应该如何命名?运行总是没有输出。请路过高手帮解答解答,感激不尽!
C--->  INPUT EXPERIMENTAL DATA
       WRITE(*,*)'elem ?'
       READ(*,'(A2)') ...

在下不才斗胆来说两句。

细观Lz的代码,惊奇的发现,这段代码写的真的挺值得学习的。

1 C--->  INPUT EXPERIMENTAL DATA
2      WRITE(*,*)'elem ?'
3       READ(*,'(A2)')elem
4       WRITE(FILM1,'(4A,2A,3A)')'ab-',elem,'.IN'
5       OPEN(1,FILE=FILM1,status='old')
6      READ(1,*)
7       READ(1,*)
8       READ(1,*)a,b,c,d,e,f,g,h


简单的来看,楼主需要输入的如下形式的东西。假设楼主的输入文件名为,ab-AA.IN.
则,lz在该程序中仅需输入“AA”, 这样应该可以保证没有问题。

实际上正如snoopyzhao 兄所说,语句4其本质就是一个字符串运算,而且他也指出,这里可能对于"ab-"的格式描述符"4A" 有问题。建议作者,仔细调试这一段,最简单的,可以在4后加上输出,看看是否有问题。

同时可以在open这里加上是否成功打开文件的判断标志。
4楼2011-04-14 08:00:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lchunmei001

木虫 (正式写手)


正如楼上两位所说,我按后面需要输入的东西,构建了一个名为ab-??.IN的输入,其中??是在屏幕上输出 elem?后输入的字符。这样运行后没有任何输出文件?由于程序太长,输出在后面,我主要是想知道我的输入方法对没?

确实有可能是'(3A,2A,3A)'这里的问题,我再试试看。
5楼2011-04-14 09:03:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lchunmei001

木虫 (正式写手)


刚试了一下改变'(3A,2A,3A)',不行啊!
6楼2011-04-14 09:24:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫(金币+0.5):给个红包,谢谢回帖交流
lchunmei001(金币+5): 2011-04-14 14:26:29
你的程序提示错误了没有?如果没有的话,为什么说不行呢?如果提示错误,最好把错误信息给出来。

另外,判断是否读了文件,可以在 read 后加一行 write……

比如

READ(1,*)a,b,c,d,e,f,g,h
write(*,*) a,b,c,d,e,f,g,h
7楼2011-04-14 10:39:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingxb

金虫 (正式写手)



小木虫(金币+0.5):给个红包,谢谢回帖交流
lchunmei001(金币+5): 2011-04-14 14:26:35
建议先检查一下你的ab-??.IN文件是否存在,如果存在,是否数据是从第三行开始。

如果open出错的话,程序应该会终止运行的,So如果程序没有终止运行,则open应该是没错。
8楼2011-04-14 10:43:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
ben_ladeng(金币+2): 谢谢指点 2011-04-14 12:23:12
lchunmei001(金币+5): 2011-04-14 14:26:40
引用回帖:
Originally posted by lchunmei001 at 2011-04-14 09:24:22:
刚试了一下改变'(3A,2A,3A)',不行啊!

这个其实不影响的,我这里有一个小测试程序,你可以看一下:
CODE:
program test
implicit none
character (len=2) :: elem
character (len=9) :: film1
real :: a,b,c,d,e,f,g,h

WRITE(*,*)'elem ?'
READ(*,'(A2)')elem
WRITE(FILM1,'(4A,2A,3A)')'ab-',elem,'.IN'
write(*,*) film1
OPEN(1,FILE=FILM1,status='old')
READ(1,*)
READ(1,*)
READ(1,*)a,b,c,d,e,f,g,h
write(*,*) a,b,c,d,e,f,g,h

end program test

ab-55.IN 的内容如下:
CODE:
blank line
blank line
1 2 3 4.2 5 6 7 8.3
blank line

下面是运行的过程:
CODE:
D:\>a
elem ?
55
ab-55.IN
   1.0000000       2.0000000       3.0000000       4.1999998       5.0000000
   6.0000000       7.0000000       8.3000002

9楼2011-04-14 10:51:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lchunmei001

木虫 (正式写手)


谢谢大家,试了试大家所说的,错误确实不应该是这前面部分,应该是程序后半部分哪里出问题了,我自己先看看。程序较长,实在不好意思贴出来让大家帮找错!感谢各位热心的虫子!
10楼2011-04-14 14:25:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lchunmei001 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 明天E口面上会评 +4 布布和一二 2026-07-12 5/250 2026-07-13 10:44 by zzybjr
[考博] 售T0P一区SCI文章,我:8O5.51.O.54,科目齐全,可+急 +3 obzynn3tuv 2026-07-11 4/200 2026-07-13 10:25 by emlgkvoijw
[论文投稿] 售T0P一区SCI文章,我:8O5.51.O.54,科目齐全,可+急 +3 obzynn3tuv 2026-07-11 4/200 2026-07-13 10:15 by emlgkvoijw
[硕博家园] 售T0P一区SCI文章,我:8O5.51.O.54,科目齐全,可+急 +3 obzynn3tuv 2026-07-11 3/150 2026-07-13 09:56 by emlgkvoijw
[硕博家园] 大龄残疾硕士的一点执念 +17 3776737374 2026-07-06 27/1350 2026-07-13 06:05 by 鲁弥abc
[考博] 售T0P一区SCI文章,我:8O5.51.O.54,科目齐全,可+急 +3 obzynn3tuv 2026-07-11 4/200 2026-07-13 00:24 by v2i90kmrcu
[考研] 售T0P一区SCI文章,我:8O5.51.O.54,科目齐全,可+急 +3 obzynn3tuv 2026-07-11 4/200 2026-07-13 00:15 by v2i90kmrcu
[基金申请] 不要再数国自然申请书的 filecode 的分隔符个数了 +10 sadpencil 2026-07-12 15/750 2026-07-12 21:50 by sadpencil
[基金申请] 祈祷青基必中 50+6 hadengry 2026-07-09 16/800 2026-07-12 20:31 by 登山虫虫
[基金申请] 生命口会评 +11 wuke100666 2026-07-07 12/600 2026-07-11 19:30 by hhs666
[考博] 27届辽宁大学应届毕业生申博 +3 可乐微风大海 2026-07-09 3/150 2026-07-10 21:23 by 贪玩的研究僧
[基金申请] 关于如何从代码看上不上会 +17 且听虎啸 2026-07-09 23/1150 2026-07-10 19:51 by sdfapple719
[有机交流] chemdraw 20+5 ?慕鱼? 2026-07-08 6/300 2026-07-10 15:37 by 紫枫星域
[基金申请] b口会评 +6 当空照 2026-07-08 6/300 2026-07-09 20:49 by tonyliu0401
[基金申请] 信息学部会评时间 +3 xuel2011 2026-07-06 3/150 2026-07-09 19:05 by mollyzhang_2003
[考研] 在职考研 +6 wu5d 2026-07-08 7/350 2026-07-09 16:40 by 化工小霸王呀
[论文投稿] MSER送审了还被拒稿 +3 S778950906 2026-07-08 5/250 2026-07-09 15:46 by S778950906
[有机交流] 硝基还原 20+3 暮年飞雪 2026-07-07 5/250 2026-07-09 13:30 by tfang
[基金申请] 化学口会评?应用基础研究和基础研究,希望能分开 +3 Tide man 2026-07-08 3/150 2026-07-09 11:36 by dede5556
[有机交流] Suzuki偶联中硼酸酯原料掉下的硼酸酯是否可以自身偶联,生成B2Pin2杂质 500+3 天下大同 2026-07-06 3/150 2026-07-07 10:31 by martyr_oyx
信息提示
请填处理意见