vett (updated)
OK, non uscirò più di casa fin quando qualcuno non mi spiega questo:
#include <stdio.h>
main()
{
int n, i, vetta[n], vettb[n], vettc[n];
printf("Immetti la lunghezza dei vettori: ");
scanf("%d", &n);
// immssione valori vettore A e B
for (i=0; i<n; i++) {
printf("Immetti il valore del vettore A posizione [%d]: ", i);
scanf("%d", &vetta[i]);
printf("Immetti il valore del vettore B posizione [%d]: ", i);
scanf("%d", &vettb[i]);
}
// stampa vettore A
for (i=0; i<n; i++)
printf("vetta[%d]=%d ", i, vetta[i]);
printf("\n");
// stampa vettore B
for (i=0; i<n; i++)
printf("vettb[%d]=%d ", i, vettb[i]);
printf("\n");
}
stesso codice, compilato su due Linux diversi, risultato A:
sugo@vm:~/c$ ./esercizio7.1 Immetti la lunghezza dei vettori: 5 Immetti il valore del vettore A posizione [0]: 0 Immetti il valore del vettore B posizione [0]: 1 Immetti il valore del vettore A posizione [1]: 2 Immetti il valore del vettore B posizione [1]: 3 Immetti il valore del vettore A posizione [2]: 4 Immetti il valore del vettore B posizione [2]: 5 Immetti il valore del vettore A posizione [3]: 6 Immetti il valore del vettore B posizione [3]: 7 Immetti il valore del vettore A posizione [4]: 8 Immetti il valore del vettore B posizione [4]: 9 vetta[0]=9 vetta[1]=2 vetta[2]=4 vetta[3]=6 vetta[4]=8 vettb[0]=1 vettb[1]=3 vettb[2]=5 vettb[3]=7 vettb[4]=9
risultato B:
*siberia /home/sugo:==> ./es Immetti la lunghezza dei vettori: 5 Immetti il valore del vettore A posizione [0]: 0 Immetti il valore del vettore B posizione [0]: 1 Immetti il valore del vettore A posizione [1]: 2 Immetti il valore del vettore B posizione [1]: 3 Immetti il valore del vettore A posizione [2]: 4 Immetti il valore del vettore B posizione [2]: 5 Immetti il valore del vettore A posizione [3]: 6 Immetti il valore del vettore B posizione [3]: 7 Immetti il valore del vettore A posizione [4]: 8 Immetti il valore del vettore B posizione [4]: 9 vetta[0]=0 vetta[1]=2 vetta[2]=4 vetta[3]=6 vetta[4]=8 vettb[0]=1 vettb[1]=3 vettb[2]=5 vettb[3]=7 vettb[4]=9
perché nel primo caso (risultato A) vetta[0] = 9?
da capire :))
————
credo di aver capito.
forse il problema è nella dichiarazione dei vettori. se al posto di:
int n, i, vetta[n], vettb[n], vettc[n];
metto:
int n, i, vetta[10], vettb[10], vettc[10];
funziona come ci si aspetta.
per una sessione di debug carina vedere qui 🙂
No comments