Logo Passei Direto

A maior rede de estudos do Brasil

Ajuda apol4 uninter estrutura de dados

Questão 3/5 - Estrutura de Dados

Na AULA 4 estudamos conceitos de árvores binárias. Acerca de árvores, assinale a alternativa abaixo:

1. ElementoDaArvoreBinaria *NovoElemento = NULL;
2. NovoElemento = (ElementoDaArvoreBinaria *)malloc(sizeof(ElementoDaArvoreBinaria));
3. NovoElemento->esquerda = NULL;
4. NovoElemento->direita = NULL;
5.
6. NovoElemento->dado = num;
7. *ElementoVarredura = NovoElemento;

Acerca de árvores e seus aspectos construtivos, assinale a alternativa INCORRETA.

  A

O código refere a inicialização de um nó da árvore, onde alocamos a variável na memória e inicializamos os campos do registro.

  B

Baseado no código acima, podemos afirmar com certeza que o registro que armazena cada elemento da árvore contém um dado do tipo inteiro e dois ponteiros.

  C

Na linha 2 alocamos uma variável na memória destinada ao programa. O espaço alocado é igual a quantidade de Bytes usada pelo registro ElementoDaArvoreBinaria.

  D

Na linha 1, a variável NovoElemento é declarada como sendo um ponteiro para um tipo de variável chamado ElementoDaArvoreBinaria.

  E

Nas linhas 3, 4 e 6 estamos acessando os campos de um registro. Em linguagem C, um campo de uma variável ponteiro é acessado com uma flecha para a direta ‘->’, e não com um PONTO. Se usarmos PONTO neste caso, como por exemplo NovoElemento.esquerda, não irá funcionar.


4 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Nesse exercício vamos estudar árvores.
Vamos começar por comentar o código dado, para entender melhor o que ocorre:

ElementoDaArvoreBinaria *NovoElemento = NULL; //Cria novo elemento
NovoElemento = (ElementoDaArvoreBinaria *)malloc(sizeof(ElementoDaArvoreBinaria)); //Aloca
NovoElemento->esquerda = NULL; //Elemento esquerdo vazio
NovoElemento->direita = NULL; //Elemento direito vazio

>

NovoElemento->dado = num; //Valor do elemento a ser inserido
*ElementoVarredura = NovoElemento; //Elemento inserido


A alternativa A é correta, visto que criamos um elemento e definimos suas propriedades.
A alternativa B é incorreta, visto que nada indica que o tipo numérico usado é inteiro.
As alternativas C, D e E são corretas, como comentado no código anteriormente.
Nesse exercício vamos estudar árvores.
Vamos começar por comentar o código dado, para entender melhor o que ocorre:

ElementoDaArvoreBinaria *NovoElemento = NULL; //Cria novo elemento
NovoElemento = (ElementoDaArvoreBinaria *)malloc(sizeof(ElementoDaArvoreBinaria)); //Aloca
NovoElemento->esquerda = NULL; //Elemento esquerdo vazio
NovoElemento->direita = NULL; //Elemento direito vazio

>

NovoElemento->dado = num; //Valor do elemento a ser inserido
*ElementoVarredura = NovoElemento; //Elemento inserido


A alternativa A é correta, visto que criamos um elemento e definimos suas propriedades.
A alternativa B é incorreta, visto que nada indica que o tipo numérico usado é inteiro.
As alternativas C, D e E são corretas, como comentado no código anteriormente.

Essa pergunta já foi respondida!