ciao ho guardato un pò il codice e mi pare che sia corretto, hai solo dimenticato che nella funzione di insert() nell'else hai messo:
mentre secondo me va benissimo se lo metti prima che ordini il vettore:codice:pi[t]=x;
e infine un'altra cosa, nella stampa non ciclare fino a i:codice:... else { pi=(int*)realloc(pi,(i+1) * sizeof(int)); pi[i] = x; for(t=i; t>=0;t--) { for(j=0;j<t;j++) { if (pi[j]>pi[j+1]){ temp=pi[j]; pi[j] = pi[j+1]; pi[j+1]=temp; } } } } ...
ma cilca solo fino a j < i;codice:j<=i;