PDA

Visualizza la versione completa : [C] Iterazione di array con condizione


champ
15-06-2009, 11:23
Salve a tutti. Nel mio programma devo inviare ad una funzione un array di dieci elementi.La funzione deve copiarli in un altro array,deve restituire al main un valore casuale,che in base a quest'ultimo,continua ordinatamente ad inviare gli elementi dell'array oppure ripete di nuovo l'invio dell'ultimo elemento alla funzione.
Allego il mio codice


...

int destinatario(int pac[],int *conf){

int ricevuti[10],j;
for(j=1;j<=10;j++)
ricevuti[j]=pac[j];
srand(time(NULL));
return *conf=rand()%1;
main(){

int i,conferma,*risp;
...

do{
for(i=1;i<=10;i++){
printf("\n\nSpedizione pacchetto numero %d\n",i);
conferma=destinatario(pacchetti,&risp);
}
}while(conferma!=0);
...


Questa la mia versione.Non sono riuscito a ripetere l'invio dell'elemento in base al valore che restituisce la funzione.
Aspetto gentilmente una vostra correzione.
Vi ringrazio in anticipo.

oregon
15-06-2009, 11:30
Un array di 10 elementi in C ha l'indice che va da 0 a 9 e non da 1 a 10 ...

champ
15-06-2009, 11:41
L'ho modificato erroneamente per la printf,anke se potevo incrementare l'indice in quest'ultima. Errore mio.

oregon
15-06-2009, 12:16
Non ho capito ... ma se hai risolto, bene cosi' ...

P.S. Ma se risp e' gia' dichiarato come puntatore ad int, allora in

conferma=destinatario(pacchetti, risp);

devi passarlo semplicemente e non come indirizzo (puntatore doppio ...).

champ
15-06-2009, 12:35
Ti ringrazio per la correzione. Non ho risolto. Praticamente non riesco ad inviare in base al valore di conferma(restituito da destinatario),lo stesso elemento dell'array o il successivo.

Loading