L'errore sta nel secondo for del programma dove inserisci la dimensione del vettore2:
codice:
for(j=0;j<n;j++){ /*la variabile n l'hai gia usata per il numero di elementi del primo array, da sostituire con m*/
printf("b[%d] = ", j);
scanf("%d", &b[j]);
}
Infatti sostituendo la n nel for con la m che dovresti usare x il secondo array il risultato é corretto:
codice:
**Inserire dimensioni vettore1 = 2
**Caricare il vettore in modo non decrescente
a[0] = 1
a[1] = 2
**Caricare il vettore in modo non decrescente
**Inserire dimensioni vettore2 = 4
b[0] = 3
b[1] = 4
b[2] = 5
b[3] = 6
**Vettore Finale
c[0] = 1
c[1] = 2
c[2] = 3
c[3] = 4
c[4] = 5
c[5] = 6
simo@localhost:~/Desktop$
PS: si ho leggermente cambiato il tuo codice
per l'output, cosi mi piaceva di piu!
Ah se vuoi un consiglio, nei programmi dai sempre un nome appropriato alle variabili, semplici nomi quali lettere dell'alfabeto possono risultare confusionali, poi sono gusti..