- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
fortran代码转python技巧
Fortran中的I/O格式化用法
格式化:用来指定程序打印输出变量的具体形式,如位置、有效位数等。
READ(*,*)和WRITE(*,*)括号中第二个*号均表示采用自由格式,此时输出中经常有多个额外的空格,且格式往往不统一。因此,可以采用格式化输出模式(采用格式描述符),来指定具体样式。
1.用法(READ和WRITE一致)
采用FORMAT语句,并且结合语句标号(行号)来使用,如:
INTEGER::a=123
WRITE(*,100)a
100FORMAT(,I5)!100是语句标号,将a变量用I5形式输出;前面放置空格,实际上可以不要
直接在第二个*号中指定具体样式,如:
INTEGER::a=123
WRITE(*,(I5))a!单引号也可以,如WRITE(*,(I5))
2.格式描述符
3.WRITE使用对象
1)整数输出(I)
具体使用格式为:rIw或rIw.m,具体用法见上述。
须注意:
整数在输出域内为右对齐;
字符个数超出域宽,输出时会用*号填充;
I0是特殊描述符,可以输出任意整数,而不需担心域宽不足。
具体例子:
PROGRAMmy_test
IMPLICITNONE
INTEGER::a=-123,b,c=5,d=12345
b=a+123
WRITE(,100)a,b,c,d
WRITE(,101)a,b,c,d
WRITE(,200)a,b,c,d
WRITE(,201)a,b,c,d
WRITE(,300)a,b,c,d
WRITE(,400)a,b,c,d100FORMAT(’’,I5,I5,I6,I10)
101FORMAT(’’,2I5,I6,I10)!用了rIw中的r
200FORMAT(’’,2I5.0,I6,I10.6)!用了rIw.m中的r和m,m是至少显示的位数,这里是0,则输出必须要≥0位,由于b的数值为0,因此没有显示值
201FORMAT(’’,2I5.2,I6,I10.6)!输出必须≥1位,b要显示出“00”
300FORMAT(’’,2I5,I6,I3)!d的数值有5位,但域宽只有3位,装不下,因此输出“*”作为警告s
400FORMAT(’’,4I0)!特殊零长度描述符,使整数完整显示出来,此时的域宽w就是整数的长度,总是能够容纳进去STOP
ENDPROGRAMmy_test
相应结果为:
-1230512345
-1230512345
-1235012345
-123005012345
-12305***
-1230512345
2)实数输出(F)
具体使用格式为:rFw.d,具体用法见上述。
须注意:
实数在输出域内为右对齐;
字符个数超出域宽,输出时会用*号填充;
当字符小于域宽时,整数部分在左侧用空格填充,小数部分在右侧用0填充。
具体例子:
PROGRAMmy_test_F
IMPLICITNONE
REAL::a=-123.,b,c=5.2456
b=a+123.
WRITE(,100)a,b,c
WRITE(,200)a,b,c
WRITE(,300)a,b,c
WRITE(,400)a,b,c100FORMAT(’’,F5.0,F6.0,F6.4)!a、b变量,右对齐,左侧填空格;所有变量均使用了rFw.d中的d,即小数位数
200FORMAT(’’,F5.0,F6.0,F6.3)!c变量,由于只要求输出3位小数,因此四舍五入了
300FORMAT(’’,F5.0,2F6.3)!b变量,即使0没有小数,但也要补充完整;同时,使用了rFw.d中的r
400FORMAT(’’,F5.0,F6.3,F3.2)!c变量,由于需要输出2位小数,但域宽为3,而包含小数在内要4个字符宽(5.25),因此超出域宽,用*号填充STOP
ENDPROGRAMmy_test_F
相应结果为:
-123.0.5.2456
-123.0.5.246
-123.0.0
您可能关注的文档
- C#编程的实用指南.docx
- go build 命令应用详解.docx
- IT项目经理考核指标.docx
- 机械行业2024年信用回顾与2025年展望 -新世纪.docx
- 商业银行2024年信用回顾与2025年展望 -新世纪.docx
- 企业竞争图谱:2024年磁性元件 头豹词条报告系列.docx
- 智算中心综合评价报告(2024年).docx
- 宏观观察2025年第02期(总第573期):打造投融资功能并重的资本市场发展新模式 20250113 -中国银行.docx
- 企业竞争图谱:2024年风电整机 头豹词条报告系列.docx
- 个人住房抵押贷款不良资产支持证券回收观察系列(四):资产处置难度有所增加,回款仍以处置完毕资产为主,且回收率保持较高水平 202501 -中诚信.docx
- 中国游戏出海行业简析报告 2024.docx
- 2025AI产业全景报告.pdf.docx
- 2024年度上市公司刑事犯罪报告.docx
- 新春看消费之汽车板块:市值跌宕与业绩荣枯间,书写国产汽车的奋斗篇章.docx
- 农小蜂-全国农产品批发市场价格行情监测周报(2024年第53周).docx
- 保险行业:浅析商业保理公司在资产证券化业务中的作用及相关风险缓释措施 20250115 -联合资信.docx
- 2025年人力资源趋势.docx
- 城投债季度报告:化债攻坚,转型可期-基础设施投融资行业2024年度政策回顾及展望 20250113 -中诚信.docx
- EqualOcean 2023中国品牌全球化服务新趋势报告.docx
- 睡眠医学中心:精准医疗,引领健康睡眠未来趋势 头豹词条报告系列.docx
文档评论(0)