作者laa7352 (Laa)
看板Fortran
标题Re: [问题] 读入问题
时间Mon Jun 29 08:06:26 2009
※ 引述《magaiml (祈)》之铭言:
: 请问
: 2000/01/01 01 02 03 04 05 06 07
: 这笔资料该如何读入呢?
: 我最後想显示的是
: 2000/01/01 XX XX XX XX...
: XX为其他的计算结果
: 主要问题是如何读入呢?
2000/01/01 01 02 03 04 05 06 07
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1234567890 15 20 25 3012
这是有关格式的输入输出
输入的部份
首先你要知道的是这行资料跟资料对应的格数
接下来,选定你要资料的格数及形态
例如,1~4格是2000,应该是年份吧
6 7格是月份,9 10格是日期
并且我要用整数去读这值,那麽在format里整数的叙述是"
I"
日期中的斜线我想跳过不读,所以用
X跳过
所以要读这年份的话可以如下写法
read(11,31)iy,im,id
31 format(
I4,
X1,
I2,
X1,
I2)
对照资料
2000/01/01 .......
^^^^^^^^^^
1234567890 之後的依此类推
输出的部份
你想要出输成下行
2000/01/01 .......
那在上一部份我们读了年月日
要输出成这样可以这样写
write(11,32)
iy,
im,
id
32 format(
I4,'
/',
I2.2,'
/',
I2.2)
年的格式没问题,後面'/'代表的是直接把引号内的所有东西当做字串输出
如果要空格,引号里就放空格
至於月日的格式
因为输出时想把小於10的部份 在十位数的地方补0
例如 1月输出成01 9日输出成09
就要用I2.2,後面的 .2 是代表把剩余高阶位数空格补零
其他的值的叙述依此类推
例如字串、实数的格式,书上应该都讲得很清楚~
加油吧
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.150.168
※ 编辑: laa7352 来自: 61.228.150.168 (06/29 08:07)
1F:→ snowanimal:你是好人.... 06/29 09:31
2F:推 duffrose:灰熊专业喔,又仔细。 06/29 09:58
※ 编辑: laa7352 来自: 140.137.32.73 (06/29 10:56)