close

% 運算子是求餘數的運算子在二維陣列的處理可以使用此技巧

首先看以下的範例

int Array[M][N];

for (int i = 0; i < M; ++i)
    for (int j = 0; j < N; ++j)
        scanf("%d", &Array[i][j]);

這是很常見的方法
但是可以用一維陣列改寫為

for (int i = 0; i < M*N; ++i)
    scanf("%d", &Array[i / M] [i % N]);

如此可以避免兩層迴圈
這個技巧一定要記住
但是必須在MN相等的狀況下才能使用

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 kgsprogrammer 的頭像
    kgsprogrammer

    太陽系後援會

    SnakeEater 發表在 痞客邦 留言(0) 人氣()