Composition86
07-11-2008, 23:05
Mi potreste aiutare a capire perchč questa funzione non lavora come vorrei?
void terzoVettore (int *a, int *b, int *c)
{
int i=0;
printf ("\nEcco il vettore C, formato dagli elementi dei vettori A e B alternati:\n");
while (a[i]!= '\0' && b[i]!= '\0'){
c[2*i] = a[i];
c[2*i+1] = b[i];
i++;
}
printf("%s\n", c);
}
Dovrebbe prendere gli elementi di due vettori di numeri a e b precedentemente inseriti e scriverli in un terzo vettore c in questo modo:
Se a=876 e b=543 -> c=857463.
Pensavo che la presenza di quei 2*i alterasse il valore del contatore, ma provando delle alternative non ho ottenuto nulla.
void terzoVettore (int *a, int *b, int *c)
{
int i=0;
printf ("\nEcco il vettore C, formato dagli elementi dei vettori A e B alternati:\n");
while (a[i]!= '\0' && b[i]!= '\0'){
c[2*i] = a[i];
c[2*i+1] = b[i];
i++;
}
printf("%s\n", c);
}
Dovrebbe prendere gli elementi di due vettori di numeri a e b precedentemente inseriti e scriverli in un terzo vettore c in questo modo:
Se a=876 e b=543 -> c=857463.
Pensavo che la presenza di quei 2*i alterasse il valore del contatore, ma provando delle alternative non ho ottenuto nulla.