主程序中可直接使用,或以字符串变量接收返回值
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