Informática, perguntado por jeffersonalmeidamart, 4 meses atrás

QUESTÃO 8
Observe o código-fonte a seguir:

01 - typedef struct NO{
02 - int dado;
03 - NO* prox;
04 - }NO;
05 -
06 - typedef struct PILHA{
07 - NO* topo;
08 - } PILHA;
09 -
10 - PILHA *p;
11 -
12 - int foo(){
13 - NO* ptr = p->topo;
14 - int dado;
15 - if(ptr != NULL){
16 - p->topo = ptr->prox;
17 - ptr->prox = NULL;
18 - dado = ptr->dado;
19 - free(ptr);
20 - return dado;
21 - }
22 - }

Considerando que o campo topo, da pilha p, é inicializado com NULL, avalie as afirmações a seguir:

I - De acordo com o código, se o topo da pilha é igual a NULL, então a função foo() será incapaz de empilhar um novo elemento.

II - A struct NO serve para representar uma posição individual dentro desta lista estática, uma vez que o campo dado é do tipo inteiro, e não um ponteiro.

III - Uma variável tipo struct PILHA poderia ser declarada de forma estática ou dinâmica, dependendo exclusivamente da necessidade do(a) programador(a).

Assim sendo, pode se dizer que é correto o que se afirma em:

Alternativas

Alternativa 1:
I, apenas.

Alternativa 2:
II, apenas.

Alternativa 3:
III, apenas.

Alternativa 4:
I e III, apenas.

Alternativa 5:
II e III, apenas.

Soluções para a tarefa

Respondido por LarissaMoura3
3

Considerando o campo topo da pilha p, temos que a alternativa correta é a Alternativa 3: III, apenas.

Um código-fonte compreende o agrupamento de palavras ou de símbolos que são escritos de maneira bem ordenada, apresentando instruções em alguma das linguagens de programação, de forma bastante lógica.

Levando em conta o campo topo da pilha p, em que é inicializado com NULL, temos que a variável de tipologia struct PILHA poderia apresentar a declaração de maneira estática ou mesmo dinâmica, em que depende da necessidade do responsável pela programação.

Bons estudos!  

Perguntas interessantes