Fortran90 中的变量相关格式

Variable dependent formatting in Fortran90

我正在尝试理解"variable dependent formatting",特别是 FORTRAN 格式语句中的重复计数是变量而不是固定数字的地方。我已经完成了 one of the similar questions here,这是通过定义格式变量来解决的。我试图实现类似类型的测试代码,但出现 运行 时间错误,提示“Fortran 运行 时间错误:格式 中缺少初始左括号”。我附上了我拥有的代码。你能告诉我哪里错了吗?

谢谢

program main
implicit none
integer num,i
real,dimension(:),allocatable :: logar
character(len = 100) fmt
print*, "enter any number"
read*,num
allocate(logar(num))
do i = 1,num    
    logar(i) = log(i/3.14)
end do  
open(unit=200,file="num.txt",status="unknown")
write(fmt,'( I4,"(f10.5)" )') num
print*,fmt
write(200,fmt) (logar(i),i=1,num)
end program

改变

write(fmt,'( I4,"(f10.5)" )') num

write(fmt,'(a, I4,"(f10.5)",a )') '(', num, ')'

否则,您缺少 fmt 中的括号。格式字符串由括号分隔。