che stupido... ho trovato l'errore da solo... posto il codice correto:
codice:
#include<iostream>
#include<cstring>
#include<cstdlib>

using namespace std;

struct nodo{
	char tel[10];
	char cognome[10];
	char nome[10];
	nodo *sin,*des;
};

void inserisci (nodo *root, nodo *pn);
void stampa(nodo *root);

void main(){
	nodo *testa = NULL, *temp = testa;
	int i,n;

	system("CLS");

	cout<<"Digita quanti amici vuoi inserire nella tua rubrica: ";
		cin>>n;
	
	for(i=0;i<n;i++){
		temp = new nodo;
		cout<<"Digita il cognome del tuo amico: ";
			cin>>temp->cognome;
		cout<<"Digita il nome del tuo amico: ";
			cin>>temp->nome;
		cout<<"Digita il numero del tuo amico: ";
			cin>>temp->tel;
		cout<<endl;
		
		temp->sin=NULL;
		temp->des=NULL;
		
		if(i!=0)
			inserisci(testa,temp);
		else
			testa= temp;
	
	}
	
	stampa(testa);

	delete testa;

	system("PAUSE");
}

void inserisci (nodo *root,nodo *pn){
	
	if (strcmp (root->cognome,pn->cognome)>=0)
		if (root->sin==NULL)
			root->sin=pn;
		else
			inserisci(root->sin,pn);
	else
		if (root->des==NULL)
			root->des=pn;
		else
			inserisci(root->des,pn);
	
}

void stampa(nodo *root){
	if(root!=NULL){
		cout<<root->cognome;
		stampa(root->sin);
		stampa(root->des);
	}
}

Non allocavo la memoria... sistemato tutto
grazie