Si hai ragione mi avevi detto di mettere while(getchar()!= '\n')
ma facendo così non cambia nulla...
codice:
do{
        printf("Vuoi inserire un altro vettore?(s/n): ");
        scanf("%c",&risp);
        getchar();
        if(risp=='s'){
                     printf("Inserisci la lunghezza del nuovo vettore: ");
                     scanf("%d",&d);
                     int vett_4[d];
                     for(x=0;x<a;x++){
                                      printf("%d%c elemento del vettore: ",x+1,248);
                                      scanf("%d",&vett_4[x]);
                                      }
                     for(x=0;x<a;x++){
                                      vett_1[x]=vett_4[x];
                                      vett_2[x]=merge[x];
                                      }
                     ordinamento(d, vett_1);
                     fusione(d, c, vett_1, vett_2, merge);
                     visualizzazione(d, merge);
                                        }
        else break;
        }
        while(getchar()!= '\n');
inoltre...cos'è il debugging???