description
n×n的螺旋方陣當n=5和n=3時分別是如下的形式
請給出乙個程式,對於任意的輸入n(0<n<11),輸出按照上面規律所獲得的n×n的螺旋方陣。
input
輸入第一行為整數m(0<m<10),代表有m組輸入;
接下來是m行資料,每行輸入乙個n(0<n<11)。
output
按照輸入的次序,依次輸出每乙個n×n方陣(乙個方陣的同一行資料之間以'\t'分隔)
兩個輸出方陣之間輸出乙個空行。
sample input
1sample output4
1 2 3 4這道題就是要讓數字螺旋排列,上下左右四個方向都對應著各自的迴圈方式。12 13 14 5
11 16 15 6
10 9 8 7
基本思路為設乙個空陣列,然後設個總迴圈直到n*n為止,再在總迴圈內設定4個方向的分迴圈來給陣列賦值。
源**如下:
using
namespace std;
intmain();
cin>>n;
k=1;
i=0;
j=0;
a[0][
0]=1;
while
(kwhile
(i+1
][j]==0)
while
(j>
0&&a[i][j-1
]==0
)while
(i>
0&&a[i-1
][j]==0)
}for
(i=0
;i這道題需要特別注意迴圈條件還有資料輸出格式。
遞推遞迴練習 O 螺旋方陣
description 的螺旋方陣當n 5和n 3時分別是如下的形式 請給出乙個程式,對於任意的輸入 0 11 輸出按照上面規律所獲得的 的螺旋方陣。input 輸入第一行為整數 0 10 代表有 組輸入 接下來是 行資料,每行輸入乙個 0 11 output 按照輸入的次序,依次輸出每乙個 方陣 ...
遞推遞迴練習 O 螺旋方陣
題目簡述 給定一數字,寫出其螺旋矩陣,例如 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9.解題思路 用二維陣列是肯定的了。開始考慮用迴圈解決問題,但是考慮用迴圈會不會太麻煩,但是最後還是用了迴圈沒有想到別的好辦法。...
遞迴遞推之螺旋方陣
列印方陣,輸入n,列印如圖所示的方陣。用二維陣列,a n m 觀察這個,得到數字從一開始增加,而增加的順序是 1。m不變,n先從最小增加到最大。2。然後n不變,m從小增加到最大。3。然後m不變,n從大減到最小。4。n不變,m從最大減到最小。再就是迴圈了,下一次的這種迴圈,n和m會分別減少1。即數變少...