Logo Passei Direto
Buscar

PROVA OBJETIVA REGULAR ESTRUTURA DADOS

Ferramentas de estudo

Questões resolvidas

Sobre alocação dinâmica de memória, é correto afirmar:
Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA
A Quando alocamos um determinado espaço de memória, podemos armazenar qualquer tipo de variável neste espaço alocado.
B Variáveis do tipo inteiro podem armazenar tanto número inteiro quando endereções de memória inteiras.
C Quando alocamos espaço de memória, não precisamos definir o tamanho a ser alocado, pois precisamos somente do endereço de memória alocado.
D A principal vantagem de trabalharmos com alocação dinâmica de memória é que não precisamos definir a quantidade de espaço a ser alocado em linha de código. O espaço de memória é alocado de acordo com a necessidade em tempo de execução do programa.
E A principal vantagem de trabalharmos com vetor em relação a alocação dinâmica de memória, é que no vetor não precisamos definir a quantidade de espaço a ser reservado de memória para armazenar variáveis. O espaço de memória é reservado de acordo com a necessidade em tempo de execução do programa.

A função a seguir lista na tela todos os registros de uma determinada Lista Encadeada e não Circular.
Se esta Lista fosse Circular, quis alterações deveriam ser realizadas para não corrermos o risco de ficarmos em loop?
A aux = ptr = prim; while( ptr != aux) { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; }
B aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != NULL);
C aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != aux);
D aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != prim);
E aux = ptr = prim; while( aux != NULL) { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; }

Quantos são e quais são os tipos de Listas que podemos ter:
Considerando o conteúdo ministrado na aula 6, assinale a alternativa CORRETA
A 2 – Encadeada e Duplamente Encadeada
B 4 – Encadeada, Duplamente Encadeada, Encadeada Circular e Duplamente Encadeada Circular
C 2 – Encadeada e Circular
D 3 – Encadeada, Duplamente Encadeada e Encadeada Circular
E 2 – Duplamente Encadeada e Duplamente Encadeada Circular

Sobre a rotina do Programa a seguir:
Considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA).
A Tomando como base que esta função esvazia a Lista completamente, a linha de comando “ulti = NULL” (que contém o endereço do último registro da Lista) é desnecessária se na inclusão do primeiro registro na Lista for verificado somente a variável que indica o endereço do primeiro elemento da Lista “prim”.
B O objetivo principal desta função é retirar todos os elementos da Lista e liberar o espaço de memória por eles ocupados.
C A linha de comando “ptr = prim;” é desnecessária, pois podemos liberar espação de memória diretamente com a variável “prim”. Ficando deste modo o comando: “free(prim->prox);”.
D Esta função para esvaziar a Lista, não funciona em Listas Circulares, por que o campo “prox” em Listas Circulares nunca será “NULL”.
E Independente se a Lista for Simplesmente Encadeada ou Duplamente Encadeada, esta função pode ser utilizada para esvaziar a Lista completamente.

Sobre registros utilizados em Listas Duplamente Encadeadas, considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA).
A Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do registro anterior e do próximo da Lista.
B Se a Lista for Circular, o último registro da Lista, em seu campo próximo, haverá o endereço do primeiro da Lista.
C Se a Lista for Circular, o primeiro registro da Lista, em seu campo anterior, haverá o endereço do último da Lista.
D O campo responsável por armazenar o endereço do próximo registro do último da Lista, é armazenado com o conteúdo NULL. Indicando que não há registros após este.
E Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do próprio registro e do próximo da Lista.

Para armazenar dados em uma Pilha, os seguintes passos devem ser realizados na respectiva ordem. Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA.
A 1. Armazenar os dados no espaço alocado 2. Alocar espaço de memória 3. Conectar o registro alocado na Pilha 4. Atualizar variáveis de controle
B 1. Alocar espaço de memória 2. Armazenar os dados no espaço alocado 3. Conectar o registro alocado na Pilha 4. Atualizar variáveis de controle
C 1. Alocar espaço de memória 2. Armazenar os dados no espaço alocado 3. Atualizar variáveis de controle 4. Conectar o registro alocado na Pilha
D 1. Atualizar variáveis de controle 2. Alocar espaço de memória 3. Armazenar os dados no espaço alocado 4. Conectar o registro alocado na Pilha
E 1. Conectar o registro alocado na Pilha 2. Alocar espaço de memória 3. Armazenar os dados no espaço alocado 4. Atualizar variáveis de controle

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Sobre alocação dinâmica de memória, é correto afirmar:
Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA
A Quando alocamos um determinado espaço de memória, podemos armazenar qualquer tipo de variável neste espaço alocado.
B Variáveis do tipo inteiro podem armazenar tanto número inteiro quando endereções de memória inteiras.
C Quando alocamos espaço de memória, não precisamos definir o tamanho a ser alocado, pois precisamos somente do endereço de memória alocado.
D A principal vantagem de trabalharmos com alocação dinâmica de memória é que não precisamos definir a quantidade de espaço a ser alocado em linha de código. O espaço de memória é alocado de acordo com a necessidade em tempo de execução do programa.
E A principal vantagem de trabalharmos com vetor em relação a alocação dinâmica de memória, é que no vetor não precisamos definir a quantidade de espaço a ser reservado de memória para armazenar variáveis. O espaço de memória é reservado de acordo com a necessidade em tempo de execução do programa.

A função a seguir lista na tela todos os registros de uma determinada Lista Encadeada e não Circular.
Se esta Lista fosse Circular, quis alterações deveriam ser realizadas para não corrermos o risco de ficarmos em loop?
A aux = ptr = prim; while( ptr != aux) { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; }
B aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != NULL);
C aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != aux);
D aux = ptr = prim; do { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; } while( ptr != prim);
E aux = ptr = prim; while( aux != NULL) { printf(“Nome: %s
”, ptr->nome); ptr = ptr->prox; }

Quantos são e quais são os tipos de Listas que podemos ter:
Considerando o conteúdo ministrado na aula 6, assinale a alternativa CORRETA
A 2 – Encadeada e Duplamente Encadeada
B 4 – Encadeada, Duplamente Encadeada, Encadeada Circular e Duplamente Encadeada Circular
C 2 – Encadeada e Circular
D 3 – Encadeada, Duplamente Encadeada e Encadeada Circular
E 2 – Duplamente Encadeada e Duplamente Encadeada Circular

Sobre a rotina do Programa a seguir:
Considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA).
A Tomando como base que esta função esvazia a Lista completamente, a linha de comando “ulti = NULL” (que contém o endereço do último registro da Lista) é desnecessária se na inclusão do primeiro registro na Lista for verificado somente a variável que indica o endereço do primeiro elemento da Lista “prim”.
B O objetivo principal desta função é retirar todos os elementos da Lista e liberar o espaço de memória por eles ocupados.
C A linha de comando “ptr = prim;” é desnecessária, pois podemos liberar espação de memória diretamente com a variável “prim”. Ficando deste modo o comando: “free(prim->prox);”.
D Esta função para esvaziar a Lista, não funciona em Listas Circulares, por que o campo “prox” em Listas Circulares nunca será “NULL”.
E Independente se a Lista for Simplesmente Encadeada ou Duplamente Encadeada, esta função pode ser utilizada para esvaziar a Lista completamente.

Sobre registros utilizados em Listas Duplamente Encadeadas, considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA).
A Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do registro anterior e do próximo da Lista.
B Se a Lista for Circular, o último registro da Lista, em seu campo próximo, haverá o endereço do primeiro da Lista.
C Se a Lista for Circular, o primeiro registro da Lista, em seu campo anterior, haverá o endereço do último da Lista.
D O campo responsável por armazenar o endereço do próximo registro do último da Lista, é armazenado com o conteúdo NULL. Indicando que não há registros após este.
E Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do próprio registro e do próximo da Lista.

Para armazenar dados em uma Pilha, os seguintes passos devem ser realizados na respectiva ordem. Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA.
A 1. Armazenar os dados no espaço alocado 2. Alocar espaço de memória 3. Conectar o registro alocado na Pilha 4. Atualizar variáveis de controle
B 1. Alocar espaço de memória 2. Armazenar os dados no espaço alocado 3. Conectar o registro alocado na Pilha 4. Atualizar variáveis de controle
C 1. Alocar espaço de memória 2. Armazenar os dados no espaço alocado 3. Atualizar variáveis de controle 4. Conectar o registro alocado na Pilha
D 1. Atualizar variáveis de controle 2. Alocar espaço de memória 3. Armazenar os dados no espaço alocado 4. Conectar o registro alocado na Pilha
E 1. Conectar o registro alocado na Pilha 2. Alocar espaço de memória 3. Armazenar os dados no espaço alocado 4. Atualizar variáveis de controle

Prévia do material em texto

Questão 1/10 - Estrutura de Dados 
Com relação as informações sobre Fila a seguir, responda 
 
I – Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo 
tipo do registro para conter o endereço de memória do próximo registro a entrar na Fila. Deste modo, quando tiramos um 
registro da Fila, sabemos onde está o anterior a este que saiu. 
II – Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo 
tipo do registro para conter o endereço de memória do registro que entrou antes dele na Fila. Deste modo, quando tiramos 
um registro da Fila, sabemos onde está o anterior a este que saiu. 
III - Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo 
tipo do registro para conter o endereço de memória deste mesmo registro. Deste modo é que o programa sabe onde está 
cada registro da Fila na memória. 
Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
 
A Somente a afirmação I está correta 
Aula 05 / Slide 17, 18 e 19 
 
B Somente a afirmação II está correta 
 
C Somente a afirmação III está correta 
 
D Somente as afirmações I e III estão corretas. 
 
E Nenhuma afirmação está correta. 
 
Questão 2/10 - Estrutura de Dados 
Sobre alocação dinâmica de memória, é correto afirmar:Considerando o conteúdo ministrado na aula 5, assinale a alternativa 
CORRETA 
 
A Quando alocamos um determinado espaço de memória, podemos armazenar qualquer tipo de variável neste espaço alocado. 
 
B Variáveis do tipo inteiro podem armazenar tanto número inteiro quando endereções de memória inteiras. 
 
C Quando alocamos espaço de memória, não precisamos definir o tamanho a ser alocado, pois precisamos somente do endereço de memória 
alocado 
 
D A principal vantagem de trabalharmos com alocação dinâmica de memória é que não precisamos definir a quantidade de espaço a ser 
alocado em linha de código. 
O espaço de memória é alocado de acordo com a necessidade em tempo de execução do programa 
Você acertou! 
Aula 05 / slides 4 
 
E A principal vantagem de trabalharmos com vetor em relação a alocação dinâmica de memória, é que no vetor não precisamos definir a 
quantidade de espaço a ser reservado de memória para armazenar variáveis. O espaço de memória é reservado de acordo com a 
necessidade em tempo de execução do programa 
 
Questão 3/10 - Estrutura de Dados 
A função a seguir lista na tela todos os registros de uma determinada Lista Encadeada e não Circular. 
Se esta Lista fosse Circular, quis alterações deveriam ser realizadas para não corrermos o risco de ficarmos em loop? 
 
listar() 
{ ptr = prim; 
 
 while( ptr != NULL) 
 { printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
 } 
} 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa CORRETA. 
 
 
A aux = ptr = prim; 
while( ptr != aux) 
{ printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
} 
 
B aux = ptr = prim; 
do 
{ printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
} while( ptr != NULL); 
 
C aux = ptr = prim; 
do 
{ printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
} while( ptr != aux); 
Você acertou! 
Considerando o conteúdo ministrado na aula 6, esta é a alternativa CORRETA. 
 
D aux = ptr = prim; 
do 
{ printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
} while( ptr != prim); 
 
E aux = ptr = prim; 
 
while( aux != NULL) 
{ printf(“Nome: %s \n”, ptr->nome); 
 ptr = ptr->prox; 
} 
 
Questão 4/10 - Estrutura de Dados 
Quantos são e quais são os tipos de Listas que podemos ter:Considerando o conteúdo ministrado na aula 6, assinale a 
alternativa CORRETA 
 
 
A 2 - Encadeada e Duplamente Encadeada 
 
B 4 - Encadeada, Duplamente Encadeada, Encadeada Circular e Duplamente Encadeada Circular 
Você acertou! 
Aula 06 / slides 6 a 9 
 
C 2 - Encadeada e Circular 
 
D 3 - Encadeada, Duplamente Encadeada e Encadeada Circular 
 
E 2 - Duplamente Encadeada e Duplamente Encadeada Circular 
 
Questão 5/10 - Estrutura de Dados 
Sobre a rotina do Programa a seguir: 
 
struct Dados { 
 char nome[30]; 
 struct Dados *ante, *prox; 
} *prim, *ulti, *ptr; 
 
teste() 
{ while( prim != NULL) 
 { ptr = prim; 
 prim = prim->prox; 
 free(ptr); 
 } 
 ulti = NULL; 
} 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA). 
 
 
A Tomando como base que esta função esvazia a Lista completamente, a linha de comando “ulti = NULL” (que contém o endereço do 
último registro da Lista) é desnecessária se na inclusão do primeiro registro na Lista for verificado somente a variável que indica o 
endereço do primeiro elemento da Lista “prim”. 
 
B O objetivo principal desta função é retirar todos os elementos da Lista e liberar o espaço de memória por eles ocupados. 
 
C A linha de comando “ptr = prim;” é desnecessária, pois podemos liberar espação de memória diretamente com a variável “prim”. Ficando 
deste modo o comando: “free(prim->prox);”. 
Você acertou! 
Considerando o conteúdo ministrado na aula 6 / Slides 19 e 20, a alternativa é INCORRETA (errada). 
 
D Esta função para esvaziar a Lista, não funciona em Listas Circulares, por que o campo “prox” em Listas Circulares nunca será “NULL”. 
 
E Independente se a Lista for Simplesmente Encadeada ou Duplamente Encadeada, esta função pode ser utilizada para esvaziar a Lista 
completamente. 
 
Questão 6/10 - Estrutura de Dados 
Sobre registros utilizados em Listas Duplamente Encadeadas,Considerando o conteúdo ministrado na aula 6, assinale a 
alternativa INCORRETA (ERRADA). 
 
 
A Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do registro anterior e do próximo da 
Lista. 
 
B Se a Lista for Circular, o último registro da Lista, em seu campo próximo, haverá o endereço do primeiro da Lista. 
 
C Se a Lista for Circular, o primeiro registro da Lista, em seu campo anterior, haverá o endereço do último da Lista. 
 
D O campo responsável por armazenar o endereço do próximo registro do último da Lista, é armazenado com o conteúdo NULL. Indicando 
que não há registros após este. 
 
E Os registros possuem duas variáveis ponteiros do mesmo tipo do registro, para armazenar o endereço do próprio registro e do próximo da 
Lista. 
Você acertou! 
Considerando o conteúdo ministrado na aula 6 / Slide 20, a alternativa está INCORRETA (ERRADA) 
 
Questão 7/10 - Estrutura de Dados 
Sobre incluir elementos em uma Lista: 
 
I – Para incluir registros em uma Lista, estes podem ser incluídos no início, no final ou no meio da Lista. Para o caso de incluir 
no final e no início, temos que tomar o cuidado de após conectar o registro da Lista, atualizar as respectivas variáveis de 
controle. 
II – Os passos corretos e em ordem, para incluir registros em uma Lista são: 1º Alocar espaço de memória; 2º Armazenar os 
dados; 3º Conectar (ligar) o registro na Lista; 4º Atualizar as variáveis de controle. 
III – Se a Lista não for ordenada, com relação a programação, é mais fácil incluir no início ou no final da Lista. 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa com a sequência CORRETA. 
 
 
A Somente as questões I e II estão corretas; 
 
B Somente as questões I e III estão corretas. 
 
C Somente as questões II e III estão corretas. 
 
D As questões I, II e III estão corretas. 
Você acertou! 
Considerando o conteúdo ministrado na aula 6 / Slides 15 e 20, a alternativa está com a sequência CORRETA.E 
As questões I, II e III estão incorretas 
 
Questão 8/10 - Estrutura de Dados 
Com relação as informações sobre algoritmos de Pilhas e Filas Fila a seguir, responda 
 
I – Quando trabalhamos tanto com Pilhas quanto com Filas, precisamos ter uma variável de controle para informar ao 
programa onde estas estruturas começam e outra variável de controle para informar ao programa onde estas estruturas 
terminam. 
II – Quando trabalhamos com o conceito Pilha, precisamos de uma única variável de controle para informar onde é o início da 
Pilha. Já para o conceito de Fila, precisamos de duas variáveis de controle, uma para informar ao programa onde a Fila 
começa e outra para informar onde a Fila termina. 
III – No algoritmo de Pilha, se a variável de controle estiver com o conteúdo NULL, significa que não existe nenhum dado 
armazenado na Pilha. 
IV – Quando retiramos dados de uma Fila, temos que seguir a seguinte ordem: 1º trabalhar com o conteúdo do registro; 2º 
armazenar o endereço do registro em uma variável auxiliar; 3º atualizar a variável de controle par o próximo endereço da Fila; 
4º liberar o espaço de memória que está na variável auxiliar. Se não seguirmos corretamente estes passos, podemos perder 
o encadeamento da Fila.Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
 
A As questões I, III e IV estão corretas 
 
B As questões I, II e III estão corretas 
 
C As questões II, III e IV estão corretas 
Você acertou! 
Aula 05 / Slide 17 a 22 
 
D As questões II e III estão incorretas 
 
E As questões I e II estão incorretas 
 
Questão 9/10 - Estrutura de Dados 
Para armazenar dados em uma Pilha, os seguintes passos devem ser realizados na respectiva ordemConsiderando o 
conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
 
A 1. Armazenar os dados no espaço alocado 
2. Alocar espaço de memória 
3. Conectar o registro alocado na Pilha 
4. Atualizar variáveis de controle 
 
B 1. Alocar espaço de memória 
2. Armazenar os dados no espaço alocado 
3. Conectar o registro alocado na Pilha 
4. Atualizar variáveis de controle 
Você acertou! 
Aula 05 / Slide 17 
 
C 1. Alocar espaço de memória 
2. Armazenar os dados no espaço alocado 
3. Atualizar variáveis de controle 
4. Conectar o registro alocado na Pilha 
 
D 1. Atualizar variáveis de controle 
2. Alocar espaço de memória 
3. Armazenar os dados no espaço alocado 
4. Conectar o registro alocado na Pilha 
 
E 1. Conectar o registro alocado na Pilha 
2. Alocar espaço de memória 
3. Armazenar os dados no espaço alocado 
4. Atualizar variáveis de controle 
 
Questão 10/10 - Estrutura de Dados 
Lista é um conceito de trabalho, uma metodologia com regras, similar a Pilhas e Filas. 
Para a montagem das Listas utilizamos alocação dinâmica de memória, ponteiros e registros. 
 
Com base nisso e com as afirmações a seguir, responda: 
 
I – Assim como Pilhas e Filas, em Listas somente podemos incluir no início ou no final de uma lista. 
II – Diferente de Pilhas e Filas, em Listas podemos incluir no meio de uma Lista. 
III – Em Listas podemos incluir de forma ordenada as informações. Deste modo, podemos em uma mesma Lista incluir no 
início, no final ou no meio (entre dois registros). 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa com a sequência CORRETA. 
 
 
A Somente a questão I está correta. 
 
B Somente a questão II está correta. 
 
C Somente a questão III está correta. 
 
D Estão corretas as questões I e II. 
 
E Estão corretas as questões II e III. 
Você acertou! 
Considerando o conteúdo ministrado na aula 6 / Slides 4, 5 e 6, Estão corretas as questões II e III

Mais conteúdos dessa disciplina