根据输入值n初始化二维数组大小 new int[2n-1][2n-1]
设置所有值为1
改变行=n的值
改变列=n的值
输出数组
public class A {public static void main(String[] args) {
int N=3
int n,i,j
for(i=1i<=Ni++){
n=1
for(j=1j<ij++){
System.out.print(n+++" ")
}
for(j=ij<=2*N-1-ij++){
System.out.print(n+" ")
}
for(j=2*N-1-i+1j<=2*N-1j++){
System.out.print(n--+" ")
}
System.out.println()
}
for(i=N-1i>=1i--){
n=1
for(j=i-1j>=1j--){
System.out.print(n+++" ")
}
for(j=2*N-1-ij>=ij--){
System.out.print(n+" ")
}
for(j=2*N-1j>=2*N-1-i+1j--){
System.out.print(n--+" ")
}
System.out.println()
}
}
}
运行结果
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1
按照题目要求编写的从小到大输出矩阵中所有数据的Java程序如下
import java.util.Arrays
public class A {
public static void main(String[] args) {
int[][] a={{2,1,4},{3,5,6},{0,8,7}}
int[] b
int i=0,len=0
//计算一维数组长度
for(int[] item:a){
len=len+item.length
}
b=new int[len]
//向一维数组复制元素
for(int[] item:a){
for(int element:item){
b[i++]=element
}
}
//由小到大排序
Arrays.sort(b)
//输出排好序的数组
System.out.println(Arrays.toString(b))
}
}