如何在列和行中打印表fsharp?
for j = 0 to 10 do
printfn "%d " j
printfn "%d" (sum j)
printfn "%d" (simpleSum j)
答案 0 :(得分:2)
在不知道您想要的输出的情况下,我们无法告诉您完全您想要写什么,但我们可以告诉您可以放在一起的基本构建块以获得您想要的内容
首先,有两个功能,printf
和printfn
。 printfn
版本会在其打印的文本末尾打印换行符,而printf
则不会。所以你可能想要的是:
printf "%d " j
printf "%d" (sum j)
printfn "%d" (simpleSum j)
其次,您实际上可以将多个%
代码放入单个printf
或printfn
调用的格式字符串中,并在格式化后将所有要打印的值作为参数传递串。 (确保%
代码的数量与您提供的值的数量相匹配)。 。E.g,:
printfn "%d %d %d" j (sum j) (simpleSum j)
最后,%
和printf
中的printfn
代码也可以在字母前加一个数字,以表示最小部分字符数文本应该占用。如果文本比那么多字符短,则会用空格填充以填充长度。如果它会更长,它将不会被截断。 E.g:
printfn "%5d" (2 + 2) // Will print " 4"
printfn "%2d" (20 * 20) // Will print "400", because it will not truncate
此外,您可以在格式编号前放置一个0
来填充零而不是空格:
printfn "%03d" (2 + 2) // Will print "004"
或者您可以在格式编号前放置一个-
,使填充空间位于通常的另一侧:
printfn "%5d" (2 + 2) // Will print " 4"
printfn "%-5d" (2 + 2) // Will print "4 "
将所有这些部分组合在一起,您应该能够尝试并找出如何打印所需的表格输出。