我通过从用户那里获取坐标,在控制台上用 for 循环绘制一个带星号的三角形。但我无法绘制五边形。五边形包括 3 个三角形,但我编写的程序无法附加这些三角形。它正在绘制 3 个不同的控制台上不同位置的三角形。我该如何解决这个问题?你能帮我吗?
marry
问问题
1006 次
1 回答
0
有两种可能的方法。
您可以创建输出的内部表示(如二维字符数组),您可以在其中绘制图形。
图像完成后,您打印整个数组。
您使用转义序列(特定于您的终端)将光标移动到某个位置以绘制字符。
在您的情况下,您应该清除终端一次,然后为每个星号移动光标。
[编辑] 至于#1:
char[][] screen = new char[20][]; // 20 lines
for(int i=0;i<screen.length; i++) screen[i] = new char[80]; // 80 columns
现在你可以用screen[y][x] = '*'
打印:
for(int i=0;i<screen.length; i++) System.out.print(new String(screen[i]));
System.out.println();
于 2011-01-04T16:15:57.410 回答