Beh, mi sa che il tuo problema non abbia a che fare con la programmazione.

Semmai hai difficolta' a trattare le matrici.

Se identifichi le righe con il primo indice e le colonne con il secondo

matrice[r][c]

se devi esaminare/gestire gli elementi di una riga, dovrai mantenere costante il primo indice e variare il secondo ... per la riga 2 (tenendo presente che e' la terza dato che il C usa gli indici base 0), dovrai esaminare gli elementi da matrice[2][0] a matrice[2][c-1]

se devi esaminare/gestire gli elementi di una colonna, dovrai mantenere costante il secondo indice e variare il primo ... per la colonna 3 dovrai esaminare gli elementi da matrice[0][3] a matrice[r-1][3]

per la diagonale principale di una matrice quadrata, i valori degli indici dovranno essere uguali e quindi matrice[i][i] con i che va da 0 a m-1 se m e' la dimensione

e cosi' via ...