C 語言 對角線添充二維陣列

2022-04-01 02:17:14 字數 967 閱讀 4745

實現 這種 "對角線" 添充二維陣列的演算法 ,寫了乙個實現 : 主要是的想法是設定幾種狀態 比如 :"橫加豎減 橫減豎加  改變狀態橫加 改變狀態豎加 " 在某個特殊的情況下 改變狀態. 就可以用乙個迴圈 來完成了. 

view code

1 #include 23

void numbox(int x,int y)

4 21

else

if (mode == 1) //

如果mode 為 0 則 橫減豎加

22

26else

//改變狀態橫加 改變狀態豎加

27

34else

if(j == y -1)

35

40else

if(i == 0)

41

46else

47

52 }

53if(i == 0 || j == 0 || i == x -1 || j == y -1) //

這些特殊值時. 需要把狀態改為 3

54

57 }

58//

輸出59

for(int m = 0;m60

65 printf("

\n");

66 }

67 }

6869

int main()

70

輸出的結果:

二維陣列主對角線與次對角線輸出 C語言

二維陣列主對角線與次對角線輸出 include include define n intmain putchar 10 printf 主對角線輸出 n 第一種方法 for int i 0 i 4 i 第二種方法 for int i 0 i 4 i printf 2d n arr i j 第三種方法 ...

對角線列印二維陣列問題

最近在網上看到這樣一道面試題 二維陣列 n n 沿對角線方向,從右上角列印到左下角如n 4 4 4二維陣列 列印順序 4 3 8 2 7 12 1 6 11 16 5 10 15 9 14 13 網上已經有各種解法,也有現成的程式,但是個人都不是很滿意,網路上的思路都不是很清晰。現在提供一種分析思路...

LeetCode二維陣列對角線遍歷

之前刷leetcode都是直接進題庫刷題,今天點開探索才發現還有這種模組化的入門教程,就開啟陣列與字串那塊開始學習。到二維陣列的時候,有一道練習題是這樣的 給定乙個含有 m x n 個元素的矩陣 m 行,n 列 請以對角線遍歷的順序返回這個矩陣中的所有元素,對角線遍歷如下圖所示。樣例輸入 1,2,3...