Ej 8 del práctico Imprimir por niveles

Ej 8 del práctico Imprimir por niveles

de Camilo Fossemale Zanotta -
Número de respuestas: 1

Buenas, tenía una consulta sobre el e8 parte b.
En el if dice : ( t == NULL && ! isEmptyQ ( q ) ) 

Sin embargo, en el último caso cuando se tenga un NULL, obtenido de la marca que termina el último nivel, pero la cola haya quedado vacía luego del desencolado del NULL, entonces entraría al else y haría "" printf (" %d ", t - > dato )  "", sin embargo t es NULL. 

¿Eso no debería dar error de ejecución?

En respuesta a Camilo Fossemale Zanotta

Re: Ej 8 del práctico Imprimir por niveles

de Libertad Tansini -

Hola, si tenés razón y por lo tanto el else debería ser de la siguiente forma:

else {

             if (t != NULL){

                printf (" %d ", t-> dato );

                if (t-> izq != NULL )

                   enqueue (t->izq , q);

                if (t-> der != NULL )

                   enqueue (t->der , q);

            }

   } 


saludos, libertad