Magna Concursos

Analise a seguinte implementação em linguagem C de uma árvore binária:

#include <stdio.h>

#include <stdlib.h>

typedef struct No{

int valor;

struct No *esq;

struct No *dir;

}No;

void func(No *raiz){

if(raiz != NULL){

func(raiz->esq);

printf("%d ",raiz->valor);

func(raiz->dir);

}

}

int main(){

No *n1 = malloc(sizeof(No));

No *n2 = malloc(sizeof(No));

No *n3 = malloc(sizeof(No));

No *n4 = malloc(sizeof(No));

No *n5 = malloc(sizeof(No));

n1->valor = 4;

n2->valor = 2;

n3->valor = 6;

n4->valor = 1;

n5->valor = 3;

n1->esq = n2;

n1->dir = n3;

n2->esq = n4;

n2->dir = n5;

n3->esq = NULL;

n3->dir = NULL;

n4->esq = NULL;

n4->dir = NULL;

n5->esq = NULL;

n5->dir = NULL;

func(n1);

return 0;

}

Assinale a alternativa que apresenta a saída produzida pelo programa.

 

Provas

Questão presente nas seguintes provas