複習 藍橋杯 方陣轉置

2021-08-17 07:51:11 字數 966 閱讀 2717

對乙個方陣轉置,就是把原來的行號變列號,原來的列號變行號

例如,如下的方陣:

1  2  3  4

5  6  7  8

9 10 11 12

13 14 15 16

轉置後變為:

1  5  9 13

2  6 10 14

3  7 11 15

4  8 12 16

但,如果是對該方陣順時針旋轉(不是轉置),卻是如下結果:

13  9  5  1       0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15

14 10  6  2       13 9  5  1 14 10  6  2 15 11   7  3   16  12   8   4

15 11  7  3 

16 12  8  4

下面的**實現的功能就是要把乙個方陣順時針旋轉。

void rotate(int* x, int rank)

for(i=0; i

free(y);

}int main(int argc, char* argv)

,,,};

int rank = 4;

rotate(&x[0][0], rank);

for(int i=0; i

printf("\n");

}return 0;

}請分析**邏輯,並推測劃線處的**。

答案寫在 「解答.txt」 檔案中

注意:只寫劃線處應該填的內容,劃線前後的內容不要抄寫。

#include#include#includevoid rotate(int* x, int rank)

return 0;

}

輸出:3  7 11 15  2  6  10  14  1  5   9  13    0   4   8  12

藍橋杯 轉方陣

對乙個方陣轉置,就是把原來的行號變列號,原來的列號變行號 例如,如下的方陣 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 轉置後變為 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 但,如果是對該方陣順時針旋轉 不是轉置 卻是如下結果 1...

藍橋杯 轉方陣

對乙個方陣轉置,就是把原來的行號變列號,原來的列號變行號 例如,如下的方陣 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 轉置後變為 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 但,如果是對該方陣順時針旋轉 不是轉置 卻是如下結果 1...

Python 方陣轉置

思想 對角線不變,兩端交換 方陣轉置 建立 defsquare matrix transpose list target 傳遞二維方陣,返回轉置後的方陣 param list target 二維方陣 return 轉置後的方陣 for j in range len list target 1 for...