参考代码:
n = int(input()) res = [[0] * n for _ in range(n)] num = 1 #将需要构造的矩形分为左上三角形和右下三角形两个部分 #所有待写入位置下标有一个特点: x + y = i - 1 for i in range(1, n + 1): x, y = 0, i - 1 while y >= 0: #判断奇偶控制写入顺序 if i % 2 == 0: res[x][y] = num else: res[y][x] = num num += 1 x += 1 y -= 1 for i in range(n + 1, 2 * n): x = n - 1 y = i - 1 - x while y <= n - 1: if i % 2 == 0: res[y][x] = num else: res[x][y] = num num += 1 x -= 1 y += 1 for row in res: for x in row: print(x, end=" ") print()
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:569 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:506 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:552 |
校门外的树 (C语言代码)浏览:961 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:563 |
永远的丰碑 (C语言代码)浏览:525 |
C语言训练-大、小写问题 (C语言代码)浏览:682 |
最好的,浏览:564 |
母牛的故事 (C语言代码)浏览:570 |
盐水的故事 (C语言代码)浏览:1529 |