Buscar

Estrutura de Dados AV 3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PERGUNTA 1 
1. Listas lineares são estruturas de dados nas quais cada elemento é precedido por um 
elemento e sucedido por outro, com exceção do primeiro, que não tem predecessor, e 
do último, que não tem sucessor. 
 
Sobre essa estrutura, assinale a alternativa correta. 
 
a. Listas lineares geram uma ordem de inclusão nos elementos. 
 
b. Estruturas de pilha e fila não são listas lineares. 
 
c. Em listas lineares sequenciais, a ordem lógica dos elementos é contrária à ordem física. 
 
d. Listas lineares geram uma ordem de exclusão nos elementos. 
 
e. Apenas a estrutura de pilha é uma lista linear. 
PERGUNTA 2 
1. Algo importante a que devemos prestar atenção ao inserir um código C são os 
comandos corretos, para que, dessa forma, possamos ter o que desejamos ao final. 
Sobre isso, vamos analisar o código escrito em C a seguir: 
 
#include <stdio.h> 
Int main ( ) 
{ 
int i = 3; 
 printf (“%d”, ++ i); 
 return ); 
} 
 
Com relação ao exposto, o valor apresentado após a execução do código é: 
 
a. 4. 
 
b. 3. 
 
c. 0. 
 
d. 1. 
 
e. 2. 
PERGUNTA 3 
1. Para remover um nó de uma lista linear encadeada, basta reorganizar o encadeamento dos 
nós anterior e posterior ao nó a ser removido. O nó imediatamente anterior ao nó a ser excluído 
deve apontar para o nó que seguia o nó excluído na lista. Se o nó removido for o primeiro nó, o 
endereço do segundo nó deve ser copiado para o ponteiro de início da lista. Se o nó removido 
for o último nó, o nó anterior deve ter seu campo de elo definido como nulo. Depois de 
reorganizar o encadeamento dos nós, garantindo assim a continuidade da lista, a posição 
ocupada pelo nó removido fica livre. 
 
Com relação à remoção de elementos para o passo a passo do desenvolvimento do algoritmo, 
assinale a alternativa CORRETA. 
 
 
a. Vincula o nó anterior com o nó seguinte / se o nó removido é o primeiro, endereço de 
acesso atualizado / exclui o nó 
 
b. Percorrer a lista / vincula o nó anterior com o nó seguinte / se o nó removido é o 
primeiro, endereço de acesso atualizado / exclui o nó 
 
c. Percorrer a lista / vincula o nó anterior com o nó seguinte/ exclui o nó 
 
d. Percorrer a lista / não encontrou, retorna falso / encontrou vincula o nó anterior com o 
nó seguinte/ se o nó removido é o primeiro, endereço de acesso atualizado / exclui o nó 
 
e. Percorrer a lista / não encontrou, retorna falso / encontrou exclui o nó / se o nó removido 
é o primeiro, endereço de acesso atualizado / 
 
PERGUNTA 4 
1. Para o processo de inserção de um novo nó no início da lista, após definir o nó 
e alimentar o nó com o valor correspondente, aponte seu campo de vinculação 
para o endereço do primeiro nó e atualize o ponteiro do início da lista para o novo 
nó. Se a lista estiver vazia, este será o único nó. 
 
Com relação à inserção de elementos para o passo a passo do 
desenvolvimento do algoritmo, assinale a alternativa CORRETA. 
 
a. Alocar valor / vincular com o elo, com aquele que era o primeiro / atualizar ponteiro de 
início do novo nodo / Se a lista estiver vazia, será o primeiro da lista 
 
b. Preencher com valor / Alocar valor / vincular com o elo, com aquele que era o primeiro / 
Se a lista estiver vazia, será o primeiro da lista 
 
c. Alocar valor / preencher com valor/ vincular com o elo, com aquele que era o primeiro / 
atualizar o ponteiro de início do novo nodo / Se a lista estiver vazia, será o primeiro da 
lista 
 
d. Preencher com valor / vincular com o elo, com aquele que era o primeiro / atualizar 
ponteiro de início do novo nodo / Se a lista estiver vazia, será o primeiro da lista 
 
e. Preencher com valor / vincular com o elo, com aquele que era o primeiro / atualizar o 
ponteiro de início com o último nodo / Se a lista estiver vazia, será o primeiro da lista 
 
PERGUNTA 5 
1. A linguagem de programação C é independente de máquina, ela é usada, 
principalmente, para criar muitos tipos de aplicativos e sistemas operacionais, como o 
Windows e outros programas complicados, por exemplo: o banco de dados Oracle, Git, 
interpretador Python e jogos, e é considerada uma base de programação no processo 
de aprendizagem de qualquer outra linguagem de programação. Sistemas operacionais 
e diversos softwares de aplicação para arquiteturas de computadores, que vão desde 
supercomputadores a CLPs e sistemas embarcados, são exemplos de tais aplicações. 
 
Vamos analisar o código fornecido a seguir: 
 #include <stdio.h> void sub (int *x, int y) {*x = 3; y = *x + 1 ;} int main () {int a, b, z; a = 
1; b = 2; sub (&a, b); z = a + b; printf ("%d", z); return 0 ;} 
 
Com base nesse comando, podemos verificar que: 
 
a. a = 3. 
 
b. a + b = 9. 
 
c. z = 5. 
 
d. c = 4. 
 
e. b = 7. 
PERGUNTA 6 
1. Considere a sequência de comandos a seguir: 
 
#include <stdio.h> int main () {int x = 1, y, z; y = ++x; z = y++; y = 2; printf("%%%d, %d, 
%d%%", x, y, z); return 0; } 
Após a codificação do código C, assinale a alternativa com os comandos que serão 
mostrados na tela. 
 
a. < 6. 
 
b. Ocorrerá um erro devido à não existência de um comando print. 
 
c. 3 < n <8. 
 
d. 6 + i = 7n. 
 
e. %2, 2, 2%. 
PERGUNTA 7 
1. Observe o código a seguir: 
 
int main (){ 
 int i, j, k = 1, mar [4][4]; 
 for ( i= 0; i < 4; j ++){ 
 for (j = 0; j <4; j++){ 
 mat [i] [j] = k; 
 k ++; 
 for ( i = 0; i< 4; j <4; j ++) 
 for (j= 2; j < 4; j ++) 
 if (i%j = = 0) 
 Printf (“%d;” mat [j][i]); 
 Return 0; 
} 
 
Com base no exposto, o resultado desse comando é: 
 
a. 9; 13; 11; 16. 
 
b. 22. 
 
c. 1; 5; 10; 15. 
 
d. 10. 
 
e. 13. 
PERGUNTA 1 
1. O fatorial é uma estratégia matemática que envolve multiplicação de números 
consecutivos muito utilizada em computação. Em listas lineares, cada elemento é 
precedido por um elemento e sucedido por outro, com exceção do primeiro, que não 
tem predecessor, e do último, que não tem sucessor, ou seja, gera uma ordem nos 
elementos, que pode ser a ordem de inclusão. 
 
Observe o código descrito a seguir. 
 
 
Fonte: Elaborado pelo autor. 
 
Para que esse comando ocorra de forma correta, é descrito o recurso de: 
 
a. autochamamento. 
 
b. recursividade. 
 
c. arranjos autossequenciais. 
 
d. linearidade. 
 
e. sequenciamento de memória. 
PERGUNTA 2 
1. Na linguagem computacional, uma prática rotineira é a compilação, ela é usada em 
vários tipos de linguagem para tornar a linguagem real acessível para uma 
determinada máquina. Quando se usa a compilação em sistema Windows, a extensão 
utilizada em mapas e objetos tridimensionais é: 
 
a. .h. 
 
b. .hex. 
 
c. .lib. 
 
d. .exe. 
 
e. .obj. 
PERGUNTA 3 
1. A maneira mais comum de implementar uma lista encadeada é usar o endereço 
físico do próximo nó. As linguagens de programação fornecem variáveis que 
podem armazenar endereços físicos, muitas vezes chamados de ponteiros. O 
aplicativo não pode acessar diretamente o endereço da variável de ponteiro, mas 
pode tentar usar esse endereço para chegar ao próximo nó da lista. Portanto, a 
quantidade total de memória utilizada pela estrutura é proporcional ao número 
de nós armazenados na lista. 
 
 
 
Uma lista linear implementada por meio de encadeamento deve apresentar 
obrigatoriamente algumas indicações. Sobre essas indicações, avalie se são (V) 
verdadeiras ou (F) falsas as afirmativas a seguir. 
 
 
I. ( ) Um ponteiro no final da lista, para acessar o final da lista para uma nova 
inserção. 
II. ( ) Um ponteiro no primeiro nodo da lista, para que esta possa ser acessada. 
III. ( ) Encadeamento ou conexão entre os nodos, para que os nodos tenham 
um elo. 
IV. ( ) Um endereço nulo, para identificar que chegou nofinal da lista. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
a. V - F - F - F 
 
b. F - V - V - V 
 
c. F - F - V - V 
 
d. V - V - V - V 
 
e. V - F - F - V 
PERGUNTA 4 
1. Em listas lineares sequenciais, a ordem lógica dos elementos (ordem vista pelo usuário) 
é a mesma da ordem física, ou seja, elementos vizinhos na lista estão em posições 
vizinhas de memória. Algo importante a que devemos prestar atenção ao definir um 
código C são os comandos corretos, para que, dessa forma, possamos ter o que 
desejamos ao final. 
 
Sobre isso, analisemos o código definido em C a seguir. 
 
 
 
 
Fonte: Elaborado pelo autor. 
 
Em relação ao exposto, o valor definido após a execução do código é: 
 
a. 2. 
 
b. 3. 
 
c. 1. 
 
d. 0. 
 
e. 4. 
PERGUNTA 5 
1. Considere a sequência de comandos a seguir: 
 
#include <stdio.h> int main () {int x = 1, y, z; y = ++x; z = y++; y = 2; printf("%%%d, %d, 
%d%%", x, y, z); return 0; } 
Após a codificação do código C, assinale a alternativa com os comandos que serão 
mostrados na tela. 
 
a. 3 < n <8. 
 
b. < 6. 
 
c. Ocorrerá um erro devido à não existência de um comando print. 
 
d. %2, 2, 2%. 
 
e. 6 + i = 7n. 
PERGUNTA 6 
1. Uma maneira de implementar estruturas dinâmicas é encadear, em que os nós 
são ligados entre si para mostrar a ordem entre eles. Assim, a ordem de nós é 
determinada pelas informações contidas no próprio nó, que informa o próximo 
nó da lista. Essas informações estão contidas em um campo chamado campo 
de link. Os nós da lista de fases podem ser atribuídos a qualquer local de 
memória, contíguo ou não, porque a ordem é explicitamente emitida pelo link, 
independentemente de sua localização física. 
 
Sobre as desvantagens de listas lineares sequenciais na estrutura de dados, 
avalie se são (V) verdadeiras ou (F) falsas as afirmativas a seguir. 
 
I. ( ) Na inserção, o processo de deslocamento acontece movimentando 
somente o último elemento da lista. 
II. ( ) É preciso determinar o espaço necessário para todos os elementos de uma 
vez. 
III. ( ) Para manter a ordem, talvez sejam necessários muitos deslocamentos em 
memória. 
IV. ( ) Na remoção de qualquer elemento, o processo de deslocamento é 
realizado de forma que somente o primeiro elemento da lista é movido. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
a. F - V - F - V 
 
b. V - F - F - V 
 
c. F - V - V - F 
 
d. V - V - F - F 
 
e. F - F - V - V 
PERGUNTA 7 
1. Algo importante a que devemos prestar atenção ao inserir um código C são os 
comandos corretos, para que, dessa forma, possamos ter o que desejamos ao final. 
Sobre isso, vamos analisar o código escrito em C a seguir: 
 
#include <stdio.h> 
Int main ( ) 
{ 
int i = 3; 
 printf (“%d”, ++ i); 
 return ); 
} 
 
Com relação ao exposto, o valor apresentado após a execução do código é: 
 
a. 2. 
 
b. 3. 
 
c. 1. 
 
d. 4. 
 
e. 0.

Continue navegando

Outros materiais