diff --git a/main.c b/main.c
index a21941acb5c7d306997ea80aa19309985eb228b5..114123daaa47d5e40d45eb6f9b01eaa86ad21ad0 100644
--- a/main.c
+++ b/main.c
@@ -51,26 +51,87 @@ void testa_copia ()
 	printf ("\nLista 2: ");
 	imprime_lista (&m);
 	printf("\n\n");
+
+	destroi_lista (&l);
+	destroi_lista (&m);
 }
 
 void testa_concatena ()
 {
+	t_lista l, m;
+	inicializa_lista (&l);
+	inicializa_lista (&m);
+
+	printf ("TESTA CONCATENA LISTA:\n\n");
+
+	ler_lista (&l);
+	printf("\n");
+	ler_lista(&m);
+
+	concatena_listas (&l, &m);
+
+	printf ("\nLista 1: ");
+	imprime_lista(&l);
+	printf ("\nLista 2: ");
+	imprime_lista(&m);
+	printf("\n\n");
+
+	destroi_lista (&l);
+	destroi_lista (&m);
 }
 
 void testa_ordena ()
 {
+	t_lista l;
+	inicializa_lista (&l);
+
+	printf ("TESTA ORDENA LISTA:\n\n");
+
+	ler_lista(&l);
+	ordena_lista(&l);
+
+	printf("\nLista 1: ");
+	imprime_lista(&l);
+	printf("\n\n");
+
+	destroi_lista(&l);
 }
 
 void testa_intercala ()
 {
+	t_lista l, m, u;
+	inicializa_lista (&l);
+	inicializa_lista (&m);
+
+	printf ("TESTA INTERCALA LISTA:\n\n");
+
+	ler_lista(&l);
+	printf("\n");
+	ler_lista(&m);
+
+	ordena_lista(&l);
+	ordena_lista(&m);
+	intercala_listas(&l, &m, &u);
+
+	printf ("\nLista 1: ");
+	imprime_lista(&l);
+	printf ("\nLista 2: ");
+	imprime_lista(&m);
+	printf ("\nLista 3: ");
+	imprime_lista(&u);
+	printf ("\n\n");
+
+	destroi_lista(&l);
+	destroi_lista(&m);
+	destroi_lista(&u);
 }
 
 int main() 
 {
-/*	testa_imprime();
+	testa_imprime();
 
 	testa_copia();
-*/
+
 	testa_concatena();
 
 	testa_ordena();