Salve ragazzi, vi posto il codice di questo programma che dovrebbe cancellare da un'array i valori pari e stampare a video il nuovo array contenente solo elementi dispari. In particolare ho utilizzato un altro array nel quale copiare inizialmente tutti i dispari per poi ritrasferirli in quello iniziale. Purtroppo non riesco a compilarlo poichè il compilatore mi da errori (che suppongo siano evidenti) riguardo il traferimento per riferimento...Ecco il codice, qualcuno potrebbe spiegarmi come gestire il passaggio per riferimento?
codice:#include<stdio.h> #include<stdlib.h> int lettura(int vet[]); int elabora(int vett[], int DIM); void stampa(int vetts[], int dimfin); main() { int vettore[30],dim; dim=lettura(vettore); dim=elabora(vettore,dim); stampa(vettore, dim); system("pause"); } int lettura(int vet[]) /*funzione per la lettura*/ { int dim1,k,n; printf("Inserire la dimensione logica del vettore"); scanf("%d", &dim1); for( k=0; k<dim1; k=k+1); { scanf("%d", &n); *vet[k]=n; } return dim1; } int elabora(int vett[], int DIM) /*funzione per la cancellazione dei pari*/ { int k,c,temp[30]; c=0; for(k=0;k<DIM;k=k+1) { if(*vett[k]%2!=0) { temp[c]=*vett[k]; c=c+1; } } DIM=c; k=0; for(c=0;c<DIM;c=c+1) { *vett[k]=temp[c]; k=k+1; } return DIM; } void stampa(int vetts[],int dimfin) /*funzione per la stampa*/ { int k; for(k=0;k<dimfin;k=k+1) { printf("%d", *vetts[k]); } }


