我在下面编写代码,先获取N个字符串的数目,然后将n个字符串连接起来,然后打印出来。我设置了advance="no“选项,但它会转到换行符。我在这个站点上运行这段代码(https://yukicoder.me/problems/no/597)
program main
implicit none
integer::i,j,k,n
character(1000)::str,ans
read*,n
do i=1,n
read(*,'(a)')str
str=trim(str)
write(*,'(a)',advance='no')str
end do
print*,""
end program
发布于 2018-04-16 11:21:28
str=trim(str)
没有任何效果,它会将修剪过的字符串放回str
中,然后用空格填充( str
的长度保持为1000)。与例如C. Fortran相反,Fortran没有终止字符,而是用空格填充字符串的其余部分。在将字符串写入输出时,应在末尾省略空格,如下所示:
write(*,'(a)',advance='no') trim(str)
https://stackoverflow.com/questions/49840232
复制相似问题