Fortran Coder

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

查看数: 15076 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-2-16 11:49

正文摘要:

这个代码是从网上下的,用以科研处理! 但是原始资料中是浮点型,如7.2或2.6,现在变成了7和2,修改输出语句“int(line(out_id))”为“real(line(out_id))”,或是去掉“int”以后,程序不输出数据! 还请各位大 ...

回复

麒麟 发表于 2017-2-16 16:00:48
fcode 发表于 2017-2-16 15:29
因为你希望输出浮点数,而 line 本身就是浮点数,不需要 int,也不能够 int。
f 编辑符针对浮点数,那么 f9 ...

明白了!谢谢您!主要是没法把掌握的理论用在实际,而且不是自己写的程序,理解也不清!
同时感谢这么好的论坛!
fcode 发表于 2017-2-16 15:29:22
因为你希望输出浮点数,而 line 本身就是浮点数,不需要 int,也不能够 int。
f 编辑符针对浮点数,那么 f9.3 就可以了。

当然其他的宽度也可以,比如 f8.3 , f7.4,只要宽度够就可以,不一定必须 f9.3
麒麟 发表于 2017-2-16 15:26:25
fcode 发表于 2017-2-16 15:14
f 编辑符针对浮点数
i 编辑符针对整数

恩,这个我知道,曾经也改成过f3或f4,同时去掉前后两个“int”,结果就是不对。
主要还是对这个line(out_id)这个变量是怎么来的不清楚?
fcode 发表于 2017-2-16 15:14:50
f 编辑符针对浮点数
i 编辑符针对整数
麒麟 发表于 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))”不改对输出也没影响,那这句话是什么意思呢?

fcode 发表于 2017-2-16 12:09:00
write(20,'(2(2x,a),2x,f9.3)')stid,"20"//trim(fname), line(out_id)

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

GMT+8, 2024-12-23 20:18

Powered by Tencent X3.4

© 2013-2024 Tencent

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