蛇形(回形)矩陣

2021-07-02 02:17:42 字數 884 閱讀 9057

**如下:

/*

蛇形(回形)矩陣的實現:

解題思路:

整體思路:每一圈的數值都是連續的,所以我們一圈一圈的賦值

對一圈的初始化:

1:設定(p,p)每一圈最左上角的座標

(q,q)每一圈最右下角的座標

2:對每一圈分四部(上,右,下,左)分別初始化

為了使這四步對稱(賦值個數相同),按下圖這樣初始化

1的位置初始化--->上

2的位置初始化--->右

3的位置初始化--->下

4的位置初始化--->左

1 1 1 2

4 2

4 2

4 3 3 3

*/#include#include//system

#define lenth 100 //陣列預設維數

void snack_matrix(int n)

; int p = 0; //每一圈(正方形)最左上角座標(p,p)

int q = n-1;//每一圈(正方形)最右下角座標(q,q)

int num = 1;//陣列中存放的值,存放乙個後+1

int i;

while(p < q)

/*初始化----->右*/

for(i=p;iq-1

num++;

} /*初始化----->下*/

for(i=q;i>p;--i)

/*初始化----->左*/

for(i=q;i>p;--i)

p++;//為下乙個圈做準備

q--;

} if(n%2 != 0) //維數是奇數,最中間乙個得單獨賦值(此時p=q)不進入while迴圈賦值

for(i=0;i

C 分別實現螺旋矩陣 回形矩陣 蛇形矩陣

1 螺旋矩陣 題目描述 輸入n,試列印輸出n n的 螺旋矩陣 每個元素佔4位場寬 輸入例如n 7,矩陣如下圖 輸出 原始碼 include include using namespace std 螺旋矩陣 intmain int cnt 1 int x 0,y 0 int dx 0,dy 1 whi...

螺旋矩陣 蛇形矩陣

問題描述 給定乙個包含m行n列的m x n矩陣,程式設計按照螺旋順序,輸出該矩陣中的所有元素。輸入有多個矩陣。每個矩陣資料的第1行有兩個整數m和n,接著是乙個mxn矩陣的描述,有m行,每行有n個整數 輸出對每個矩陣資料,按照螺旋順序輸出矩陣陣列的元素。輸入樣例 3 31 2 3 4 5 6 7 8 ...

1160 蛇形矩陣

時間限制 1 s 空間限制 128000 kb 題目等級 silver 題解 小明玩乙個數字遊戲,取個n行n列數字矩陣 其中n為不超過100的奇數 數字的填補方法為 在矩陣中心從1開始以逆時針方向繞行,逐圈擴大,直到n行n列填滿數字,請輸出該n行n列正方形矩陣以及其的對角線數字之和.輸入描述 inp...