我希望将数字以以下方式打印到文件中,它们之间仅留1个空格:
4 238.328 0.744439 5.119 0 34.2
但最终之间会有很多空格。我如何解决它? 这是我到目前为止的代码,它输出了我上面描述的内容。
character(len=30) :: str1,str2,str3,str4,str5,str6
open(unit=21, file='test.dat', status='replace', action='write')
do i=1,200
write(str1,*) i
write(str2,*) volume(i)
write(str3,*) radius(i)
write(str4,*) G(i)
write(str5,*) cpr(i)
write(str6,*) area(i)
write(21,'(a)') trim(str1)//trim(str2)//trim(str3)//trim(str4)//trim(str5)//trim(str6)
end do
编辑:我一直在尝试为每个 str 使用格式,例如:
write(str1,'(I5)') i
write(str2,'(F10.1)') volume(i)
write(str3,'(F10.5)') radius(i)
等等。仍然不起作用。