主程序中可直接使用,或以字符串变量接收返回值
Program www_fcode_cn
Implicit None
character(len=30)::AddComma2Integer
write(*,*) AddComma2Integer( 2338021 )
!// 输出为 +2,338,021
End Program www_fcode_cn
!============================================================================
! 为整数添加千分位符号
! Num 整数
!****************************************************************************
function AddComma2Integer( Num )
integer,parameter :: len = 30 !int(8)最大20+6字节
character(len) AddComma2Integer, temp
integer,intent(in) :: Num
integer i, j, k, m, n
temp=''
AddComma2Integer=''
write(temp,'(spi)') Num !输出数据添加'+'
temp = adjustl(temp) !左对齐
m = len_trim(temp) !字符长度
n = ( m - 2 ) / 3 !千分位符号数量
i = m - 3 * n !第一个千分位符号之前的字符数量
j = i + 1
k = j
AddComma2Integer(1:i) = temp(1:i) !第一个千分位符号之前的字符
do i = 1, n
AddComma2Integer(j:j+3) = ','//temp(k:k+2)
j = j + 4
k = k + 3
end do
end function