我应该编写一个程序来询问用户想要的行数。例如,用户输入 4,因为number
它将显示从 1 到 16 的所有数字,排列为 4 列和 4 行。如果输入 4,应该是这样的输出:
1 2 3 4
8 7 6 5
9 10 11 12
16 15 14 13
如您所见,有一个模式。第一个出现的数字是 1,然后一直增加到 4。下一行从 8 开始,然后到 5。正如你所见,它就像一条蛇。但我的程序不工作。尽管我尝试过模拟我的程序,但我仍然无法弄清楚出了什么问题。
另一个例子是输入 3 时:
1 2 3
6 5 4
7 8 9
这是我当前的代码:请帮助我,谢谢
import java.util.*;
public class ArrayOutput2
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
int number = 0;
System.out.print("Enter number of rows: ");
number = input.nextInt();
int[][] num = new int[number][number];
int k=1, i, j;
if (number == 1)
{
num[0][0] = 1;
}
while(k< (number*number))
{
for(i=number; i>=1; i--)
{
if (i%2==1)
{
for(j=number-1; j>=0; j--)
{
num[i-1][j]=k;
k++;
}
}
else
for(j=0; j<=number-1; j++)
{
num[i-1][j]=k;
k++;
}
}
}
for(i=number-1;i<0;i--)
{
for(j=number-1;j<0;j--)
System.out.print(num[i][j]+"\t");
System.out.println();
}
}
}