写个程序,打印出以下数据:
1 2 6 7 15 16 28 29 45
3 5 8 14 17 27 30 44 46
4 9 13 18 26 31 43 47 60
10 12 19 25 32 42 48 59 61
11 20 24 33 41 49 58 62 71
21 23 34 40 50 57 63 70 72
22 35 39 51 56 64 69 73 78
36 38 52 55 65 68 74 77 79
37 53 54 66 67 75 76 80 81
程序打印题,如下:
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
xuxiaolei 2008-09-25 08:21关注[code="java"]
public static void main(String[] args) {
int[][] a = new int[9][9];
int idx = 0;for(int i = 0; i < 10; i++) { if(i % 2 == 1) { for(int x = 0, y = i -1; x < i && y >= 0; x++, y--) { a[x][y] = ++idx; } } else { for(int x = i -1, y = 0; x >= 0 && y < i; x--, y++) { a[x][y] = ++idx; } } } for(int i = 1; i < 9; i++) { if(i % 2 == 1) { for(int x = 9 - 1, y = i; x >= i && y < 9; x--, y++ ) { a[x][y] = ++idx; } } else { for(int x = i, y = 9 -1; x < 9 && y >= i; x++, y--) { a[x][y] = ++idx; } } } for(int y = 0; y < 9; y++) { for(int x = 0; x < 9; x++) { System.out.print(a[x][y] + "\t"); } System.out.println(); } }[/code]
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报