这是我的代码:
Program Array_Output
Implicit none
Integer :: i , Size_0
Integer , allocatable :: Array_0 (:)
Character , parameter :: fmt_0 = '()' !How to get: 'size_0(1X,i3)'
Write(*,*)"Enter the number:"
Read(*,*) Size_0
Allocate(Array_0(Size_0))
Do i = 1 , Size_0
Array_0(i) = i + 4
End Do
Open(Unit = 16, File='Output.txt', Status = 'Unknown', action = 'Write')
Write(16, fmt_0 ) ( Array_0(i), i = 1 , Size_0)
Close(Unit = 16)
End Program Array_Output
我对此代码的意图是编写包含输入数字output
的{{1}}格式。如何在输入该数字键盘时以格式编写该号码?
答案 0 :(得分:1)
我不确定是否/何时成为标准,但我使用格式(*(1X, I3))
。
如果这不起作用,你必须变得更有创意:
character(len=len('(___(1X, I3))')) :: fmt_0
...
write(fmt_0, '(A1, I3, A)') "(", size_0, "(1X,I3))"
write(16, fmt_0) Array(1:size_0)