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'分隔)
#include using namespace std;
int main()
; int n,n1,n2,num,count=1;
while(~scanf("%d",&n2))
{while(n2--)
{scanf("%d",&n);
count=1;
j=0;
i=0;
num=n-1;//num表示每層每行(或每列)需要幾次賦值
if(n%2>0)
n1=n/2+1;
else
n1=n/2;//n1表示螺旋方陣有幾層
for(b=0;bsample input14
sample output
1 2 3 412 13 14 5
11 16 15 6
10 9 8 7
該題的關鍵在於如何設定螺旋迴圈
每一層4個小迴圈,比如樣例輸出 一層迴圈中 1 2 3 乙個小迴圈 5 6 7 乙個小迴圈 7 8 9 乙個小迴圈 10 11 12 乙個小迴圈,外層可以設定n-=2再進行下一層大迴圈,最裡面的部分分奇數偶數處理細節,**如下:
遞推遞迴練習 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。即數變少...