Salve avevo questo esercizio da svolgere:
Data una matrice di n righe ed m colonne, di numeri interi minori di 10.
Individuare e stampare le colonne della matrice che contengono tre elementi consecutivi che
abbiano valori successivi.
La soluzione che ho rilevato è la seguente: 
 
#include <stdio.h>
#include <stdlib.h>
#define RIGHE 4
#define COLONNE 5
int main(void) {
	int matrice[RIGHE][COLONNE];
	int i, k;
	i = 0;
	int numero_caricato;
	while (i < RIGHE)
	{
		k = 0;
		while (k < COLONNE)
		{
			printf("inserisci il %d, %d valore della matrice: \n", i, k);
			scanf("%d", &numero_caricato);
			if (numero_caricato < 10)
			{
				matrice[i][k] = numero_caricato;
				k++;
			}else printf("Inserisci di nuovo il valore \n");
		}
		i++;
	}
	i=0;
	while (i<RIGHE)
	{
		k=0;
		while(k<COLONNE)
		{
			if(matrice[k][i]+1 == matrice[k+1][i] && matrice[k][i]+2 == matrice[k+2][i])
			{
				printf("%d-%d-%d\n", matrice[k][i], matrice[k+1][i], matrice[k+2][i]);
			}
			k++;
		}
		i++;
	}
system("pause");
return 0;
}
L'algoritmo funziona ma non mi conta l'ultima colonna
esempio:
3 5 6 7 9
1 3 1 7 5
3 5 2 8 6 
1 5 3 9 7
Mandato in esecuzione mi rileva la sequenza: 1 2 3 e la sequenza 7 8 9 ma non 5 6 7 
Potete darmi qualche consiglio?