Questão de Programação — Linguagens de programação — IF-ES 2024
ProgramaçãoLinguagens de programação
- Código
- qg239258
- Banca
- IF-ES
- Órgão
- IF-ES
- Ano
- 2024
- Nível
- Superior
- Cargo
- Professor EBTT - Computação
Considerando a estrutura de dados de árvore binária e sabendo que uma árvore binária possui 3 modos de percurso, a saber: Pré-Ordem, Ordem Simétrica (ou In-Ordem) e Pós-ordem; deseja-se desenvolver uma função usando a Linguagem de Programação C para imprimir todos os elementos de uma árvore binária, utilizando a ordem simétrica (ou In-Ordem). A título de ilustração, se considerarmos a árvore binária da figura abaixo, os elementos impressos em ordem simétrica seria: y i x j z k
O código abaixo representa a estrutura (struct) do nó da árvore. Qual alternativa permite imprimir a estrutura da árvore utilizando a ordem de percurso simétrica (ou In-Ordem). Obs: considere a assinatura da função de imprimir como void p(A *a) e que “a” seja um ponteiro para o nó raiz de uma árvore binária válida.struct a {char i; //informação armazenada no nóstruct a* e; //esquerdastruct a* d; //direita};typedef struct a A;
O código abaixo representa a estrutura (struct) do nó da árvore. Qual alternativa permite imprimir a estrutura da árvore utilizando a ordem de percurso simétrica (ou In-Ordem). Obs: considere a assinatura da função de imprimir como void p(A *a) e que “a” seja um ponteiro para o nó raiz de uma árvore binária válida.struct a {char i; //informação armazenada no nóstruct a* e; //esquerdastruct a* d; //direita};typedef struct a A;- Avoid p(A* a){if (!(a==NULL)){p(a->e);printf("%c ", a->i);p(a->d);}}
- Bvoid p(A* a){if (!(a==NULL)){p(a->e);p(a->d);printf("%c ", a->i);}}
- Cvoid p(A* a){if (!(a==NULL)){printf("%c ", a->i);p(a->e);p(a->d);}}
- Dvoid p(A* a){if (!(a==NULL)){p(a.e);printf("%c ", a.i);p(a.d);}}
- Evoid p(A* a){if (!(a->e==NULL && a->d==NULL)){p(a->e);p(a->d);printf("%c ", a->i);}}