non capisco perchè, ma si impalla la stampa! qualcuno mi sa dire se c'è un errore in queste void?

Codice PHP:
/* Questa deve stampare l'albero alla posizione Pos nell'array...*/
void StampaAlbero
(
  
TREE *Albero
  
int Pos
)
{
  
  
printf("( %d "Albero[Pos].Padre+1);
  
StampaAlbero(Albero[Pos].FiglioSxPos);
  
StampaAlbero(Albero[Pos].FiglioDxPos);
  
printf(" )");

  if( 
albero == NULL )
  {
    
printf("()");
  }
}  
/* StampaAlbero */

void PrintTree

  
TREE *ArrayAlberi/* Alberi da stampare */
  
int Fine        /* Dimensione dell'array da stampare */
)
{
      
int i;
      for(
i=0i<Finei++)
      {
        
StampaAlberoArrayAlberi);
        
printf("\n");
        
system("PAUSE");
      }
      
system("CLS");    

:master:

____1
___ 2 3
__N N N N
Dovrebbe stampare questo -> ( 1( (2 ( () () ) ( 3( () () ) ) )