Baixe o app para aproveitar ainda mais
Prévia do material em texto
Exercício de Estrutura de Dados - Exercício de Fixação 1 - Tentativa 1 de 3 Questão 1 de 10 Em programação, a alocação de memória pode acontecer de forma estática, através da declaração de uma variável, ou de forma dinâmica. A Linguagem C é uma das linguagens que permite o uso de ponteiros e alocação dinâmica de memória, sendo que a função malloc() é utilizada para esta finalidade. Qual é a função utilizada para liberar o espaço de memória reservado pela função malloc()? A - dislloc(). B - free(). Resposta correta C - removealloc(). D - unlock(). E - void(). Questão 2 de 10 Fundação Carlos Chagas, 2012 – TCE-AP Sobre pilhas é correto afirmar: A - Cada vez que um novo elemento deve ser inserido na pilha, ele é colocado no seu topo e, em qualquer momento, apenas aquele posicionado no topo da pilha pode ser removido. Resposta correta B - Os elementos na pilha são sempre removidos na mesma ordem em que foram inseridos. C - Sendo P uma pilha e x um elemento qualquer, a operação Push(P,x) diminui o tamanho da pilha P, removendo o elemento x do seu topo. D - Uma lista LIFO (Last-In/First-Out) é uma estrutura estática, ou seja, é uma coleção que não pode aumentar e diminuir durante sua existência. E - Uma pilha suporta apenas duas operações básicas, tradicionalmente denominadas push (insere um novo elemento no topo da pilha) e pop (remove um elemento do topo da pilha). Questão 3 de 10 Em programação, a alocação de memória pode acontecer de forma estática, através da declaração de uma variável, ou de forma dinâmica. A linguagem C é uma das linguagens que permite o uso de ponteiros e alocação dinâmica de memória. A função free() é utilizada para liberar um espaço de memória alocado. Sobre a função free() é correto afirmar? I. É uma função que não possui retorno. II. É uma função que não exige argumento por parâmetro. III. Pode ser utilizada para liberar espaço de variáveis estáticas. A - As alternativas I, II e III estão corretas. B - Somente a alternativa I está correta. C - Somente a alternativa II está correta. D - Somente as alternativas I e III estão corretas. Resposta correta E - Somente as alternativas II e III estão corretas. Questão 4 de 10 Fundação Carlos Chagas, 2010 – DPE-SP - Agente de Defensoria - Programador Em relação às estruturas de dados, considere: I. Um tipo abstrato de dados está desvinculado de sua implementação, ou seja, a sua definição visa a preocupação com o que ele faz e não como ele faz. II. A lista duplamente encadeada além de saber o próximo nó, cada elemento também conhece o nó anterior a ele na lista, o que facilita a remoção de um elemento e a exibição dos elementos na ordem inversa. III. A implementação dinâmica de pilhas possui as mesmas vantagens que as listas dinâmicas, ou seja, não é necessário saber a quantidade máxima de elementos que serão armazenados. IV. Lista, pilha, fila e array são casos típicos de estruturas lineares, enquanto árvore, grafo e heap são casos típicos de estruturas não lineares. É correto o que se afirma em: A - I e IV, apenas. B - I, II e III, apenas. C - I, II, III e IV. Resposta correta D - II e III, apenas. E - II, III e IV, apenas. Questão 5 de 10 As estruturas de dados árvores são de suma importância na computação e permitiram que algoritmos complexos de geração de conhecimento fossem criados. Em relação a estrutura árvore é possível dizer que: I. O número de sub árvores de um nodo denomina-se grau. II. Uma árvore binária não pode ser nula. III. Toda árvore, inclusive as nulas, possui um nodo especial denominado raiz. Está correto o que consta em: A - I e II, apenas B - I e III, apenas C - I, apenas Resposta correta D - I, II e III E - III, apenas Questão 6 de 10 Em programação, um ponteiro é um tipo de variável que faz referência a um conteúdo alocado em memória, através de seu endereço. A Linguagem C é uma das linguagens que permite o uso de ponteiros. Considerando o trecho de programa a seguir, o que será exibido pela função printf()? int a, *p; p = &a; a = 5; printf(“%d”, *p); A - nada, o programa gera erro de compilação B - o conteúdo de a, que é o número 5 Resposta correta C - o conteúdo de p, que é um endereço D - o endereço de a E - o endereço de p Questão 6 de 10 Em programação, um ponteiro é um tipo de variável que faz referência a um conteúdo alocado em memória, através de seu endereço. A Linguagem C é uma das linguagens que permite o uso de ponteiros. Considerando o trecho de programa a seguir, o que será exibido pela função printf()? int a, *p; p = &a; a = 5; printf(“%d”, *p); A - nada, o programa gera erro de compilação B - o conteúdo de a, que é o número 5 Resposta correta C - o conteúdo de p, que é um endereço D - o endereço de a E - o endereço de p Questão 8 de 10 Em programação, um ponteiro é um tipo de variável que faz referência a um conteúdo alocado em memória, através de seu endereço. A Linguagem C é uma das linguagens que permite o uso de ponteiros. Considerando o trecho de programa a seguir, o que será exibido pela função printf()? int a, *p; p = &a; a = 5; printf ("%d", *p); A - nada, o programa gera erro de compilação. B - o conteúdo de a, que é o número 5. Resposta correta C - o conteúdo de p, que é um endereço. D - o endereço de a. E - o endereço de p. Questão 9 de 10 Em programação, um ponteiro é um tipo de variável que faz referência a um conteúdo alocado em memória, através de seu endereço. A Linguagem C é uma das linguagens que permite o uso de ponteiros. Para se declarar um ponteiro em C, utiliza-se, além do tipo de dado ao qual ele faz referência, um símbolo. Qual é este símbolo? A - ˜ B - $ C - % D - & E - * Resposta correta Questão 10 de 10 As estruturas homogêneas são o tipo mais básico de listas. Elas servem para permitir o armazenamento de mais de um valor de mesmo tipo de dado, sob uma única variável, na forma de arranjo indexado. Uma estrutura homogênea unidimensional também é chamada de: A - escalar B - matriz C - objeto D - segmento E - vetor Resposta correta
Compartilhar