用 java 写出:输入一个数字,打印输出回型数字矩阵
时间: 2024-05-15 15:17:37 浏览: 272
好的,这个问题可以使用Java语言的循环结构来解决,以下是示例代码:
```java
import java.util.Scanner;
public class SpiralMatrix {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个数字: ");
int n = sc.nextInt();
int[][] matrix = new int[n][n];
int num = 1;
int left = 0, right = n - 1, top = 0, bottom = n - 1;
while (num <= n * n) {
for (int i = left; i <= right; i++) {
matrix[top][i] = num;
num++;
}
top++;
for (int i = top; i <= bottom; i++) {
matrix[i][right] = num;
num++;
}
right--;
for (int i = right; i >= left; i--) {
matrix[bottom][i] = num;
num++;
}
bottom--;
for (int i = bottom; i >= top; i--) {
matrix[i][left] = num;
num++;
}
left++;
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
System.out.printf("%d ", matrix[i][j]);
}
System.out.println();
}
}
}
```
这段代码使用了一个二维数组来存储生成的数字矩阵,然后通过四次循环分别从左到右、从上到下、从右到左、从下到上依次遍历并填充数字,直到矩阵中的所有位置都被填充完毕。最后输出整个矩阵即可。
阅读全文