Ciao a tutti, ho un dubbio esistenziale sugli array e i puntatori.
Il testo dell'esercizio e' il seguente: Scrivere un programma in linguaggio C che, acquisito da tastiera un vettore di N numeri, ne ruoti circolarmente il contenuto di M posizioni e visualizzi la configurazione finale. Il verso della rotazione ed il valore di M sono richiesti come input.
Ho tentato di risolvere il problema con un ciclo for:
codice:
if (verso == 1) { // SHIFT VERSO SINISTRA
printf("Vettore shiftato verso sinistra: \n");
for (i = 0; i < N; i++) {
vet[i] = vet[i + posizioni];
x = vet[i];
printf("Elemento %d: %d\n", i + 1, x);
}
}
se per esempio decido di fare uno shift di 3 posizioni e il vettore e' di [6], gli ultimi 3 elementi del vettore vengono shiftati correttamente di 3 posizioni. i primi 3 invece non risultano shiftati e viene riportato nel print questo numero: -858993460
Scusate per il linguaggio non preciso, sono alle prime armi 
PS ovviamente non ho riportato tutto il codice completo ma includeva la lettura delle dimensioni del vettore (N), l'acquisizione degli elementi del vettore, la richiesta all'utente del numero di posizioni da shiftare (posizioni), la richiesta all'utente del verso di rotazione (1 = sinistra, 2 = destra)