想知道我们是否可以从右到左,从下到上打印...当我尝试编写一个程序来打印下面的正方形(对于输入'n',这里n = 4)时,我想到了这个想法

1  2  3  4
12 13 14 5
11 16 15 6
10 9  8  7


这可以通过多种方式解决,方法是将其存储到2D数组中并打印该数组...(任何语言:Perl,C,C ++,Java)。

最佳答案

长答案是您可以执行终端支持的任何操作。终端(或“字符输出设备”)种类很多,其中许多支持光标运动。 (您可以看到Termcap Library项目来创建图片,这是不同终端类型的作用。)有一个用于向上移动一行的终端命令,因此从本质上讲,您应该能够做到这一点。戳termcap database后,我想到了以下内容:

$ printf "\n"; printf '\e[A'; echo Foo
Foo


换句话说,\e[A字符串使您排成一行的机会不为零。在某些终端上:)

关于language-agnostic - 有(与换行符相反)字符吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45683453/

10-13 09:52