编写一个Java 程序,形成以下形式的二维数组,并输出。
1 2 9 10 25
4 3 8 11 24
5 6 7 12 23
16 15 14 13 22
17 18 19 20 21
大侠们帮帮忙!!!急要!
编写一个Java 程序,形成以下形式的二维数组,并输出。
1 2 9 10 25
4 3 8 11 24
5 6 7 12 23
16 15 14 13 22
17 18 19 20 21
大侠们帮帮忙!!!急要!
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int row=5; //这里控制输出的行列 请保证行列相等,这里就不做判断了
int[][] a=new int[row][row];
a[0][0]=1;
int n=2,zero=0,change=1;
int value=2;
for(int i=1;i<row;i++){
for(int j=0;j<(2*n-1);j++){
if(i%2!=0){
if(j<(2*n-2)/2){
a[zero++][change]=value++;
continue;
}
if(j==(2*n-2)/2){
a[j][j]=value++;
}
if(j>(2*n-2)/2){
a[change][--zero]=value++;
}
}else{
if(j<(2*n-2)/2){
a[change][zero++]=value++;
continue;
}
if(j==(2*n-2)/2){
a[j][j]=value++;
}
if(j>(2*n-2)/2){
a[--zero][change]=value++;
}
}
}
n++;
change++;
zero=0;
}
String out="";
for(int i=0;i<row;i++){
for(int j=0;j<row;j++){
out=""+a[i][j];
if(out.length()==1)
out="0"+out;
System.out.print(out+" ");
}
System.out.println();
}
}
}
运行测试通过
public class TArray{ public static void main(String args[]) { int tarray[][]={{1,2,9,10,25},{4,3,8,11,24},{5,6,7,12,23},
{16,15,14,13,22},{17,18,19,20,21}}; for(int i=0;i<=4;i++) { for(int j=0;j<=4;j++) System.out.print(tarray[i][j]+"\t"); System.out.println(" "); } } }