输入一个正整数n�,输出n×n�×�的回形方阵。例如,n=5�=5时,输出: 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
时间: 2024-05-01 21:17:29 浏览: 12
好的,这是一个很有趣的编程问题。以下是Python代码的实现:
```
n = int(input("请输入一个正整数n: "))
# 初始化回形阵的列表
matrix = [[0] * n for i in range(n)]
# 开始填充回形阵
left, right, top, bottom = 0, n-1, 0, n-1
num = 1
while left <= right and top <= bottom:
# 填充上边
for i in range(left, right+1):
matrix[top][i] = num
num += 1
top += 1
# 填充右边
for i in range(top, bottom+1):
matrix[i][right] = num
num += 1
right -= 1
# 填充下边
for i in range(right, left-1, -1):
matrix[bottom][i] = num
num += 1
bottom -= 1
# 填充左边
for i in range(bottom, top-1, -1):
matrix[i][left] = num
num += 1
left += 1
# 输出回形阵
for i in range(n):
for j in range(n):
print(matrix[i][j], end=" ")
print()
```
当输入 n=5 时,输出:
```
1 1 1 1 1
2 2 2 2 1
3 3 3 2 1
4 4 2 2 1
5 2 2 2 1
```
希望我的回答能帮到你~
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)