Fortran Coder

查看: 14636|回复: 6
打印 上一主题 下一主题

[输入输出] 读取浮点型文本资料,输出结果为整形

[复制链接]

12

帖子

4

主题

0

精华

入门

F 币
60 元
贡献
35 点
跳转到指定楼层
楼主
发表于 2017-2-16 11:49:11 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
这个代码是从网上下的,用以科研处理!

输出结果如下

但是原始资料中是浮点型,如7.2或2.6,现在变成了7和2,修改输出语句“int(line(out_id))”为“real(line(out_id))”,或是去掉“int”以后,程序不输出数据!
还请各位大侠看看,附上资料

diamond1_batch.rar

123.59 KB, 下载次数: 6

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

12

帖子

4

主题

0

精华

入门

F 币
60 元
贡献
35 点
沙发
 楼主| 发表于 2017-2-16 13:57:37 | 显示全部楼层
fcode 发表于 2017-2-16 12:09
write(20,'(2(2x,a),2x,f9.3)')stid,"20"//trim(fname), line(out_id)

对了对了!十分感谢,但是还想知道为什么是写成f9.3,去掉int,就行了?前面“write(nowstid,'(i5)') int(line(1))”不改对输出也没影响,那这句话是什么意思呢?

12

帖子

4

主题

0

精华

入门

F 币
60 元
贡献
35 点
板凳
 楼主| 发表于 2017-2-16 15:26:25 | 显示全部楼层
fcode 发表于 2017-2-16 15:14
f 编辑符针对浮点数
i 编辑符针对整数

恩,这个我知道,曾经也改成过f3或f4,同时去掉前后两个“int”,结果就是不对。
主要还是对这个line(out_id)这个变量是怎么来的不清楚?

12

帖子

4

主题

0

精华

入门

F 币
60 元
贡献
35 点
地板
 楼主| 发表于 2017-2-16 16:00:48 | 显示全部楼层
fcode 发表于 2017-2-16 15:29
因为你希望输出浮点数,而 line 本身就是浮点数,不需要 int,也不能够 int。
f 编辑符针对浮点数,那么 f9 ...

明白了!谢谢您!主要是没法把掌握的理论用在实际,而且不是自己写的程序,理解也不清!
同时感谢这么好的论坛!
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-4 13:20

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表