爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2163|回复: 4

[求助] 为了将四位数凑为五位数,前面加个零,fortran怎么实现啊?

[复制链接]
发表于 2014-3-6 15:02:27 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
编程过程中遇到了要将四位数凑为五位数,前面加个零,比如说,将1234变为01234,该怎么用fortran实现呢?求助各位大神,谢谢啦!
密码修改失败请联系微信:mofangbao
发表于 2014-3-6 15:17:40 | 显示全部楼层
i5.5
应该这样就行
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-3-6 15:28:20 | 显示全部楼层
密码修改失败请联系微信:mofangbao
发表于 2014-3-6 22:39:56 | 显示全部楼层
如果是想变为字符的话,下面的例子可以参考:(将34变为‘00034’的字符)

program test
implicit none
character*5 :: chars, zeros, frmt
integer::n

call blank(frmt)
write(frmt,'(i5)')34
call zero(zeros)

n=len(trim(adjustl(frmt)))
chars=zeros(1:len(zeros)-n)//trim(adjustl(frmt))
write(*,*)chars

end

        subroutine blank(string)
! blank out the string from 1 to its declared length
        character*(*) string
        integer i

        do i = 1, len(string)
        string(i:i) = ' '
        enddo
        return
        end

        subroutine zero(string)
        character*(*) string
        integer i

        do i = 1, len(string)
        string(i:i) = '0'
        enddo
        return
        end
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-3-6 23:52:30 | 显示全部楼层
Nepenthe 发表于 2014-3-6 22:39
如果是想变为字符的话,下面的例子可以参考:(将34变为‘00034’的字符)

program test

整型变量变字符变量可以直接这样:
character(len=4) :: char_year(num)
integer year(num)

write(char_year(i),fmt="(I4)"),year(i)
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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