Buscar

Prova Algoritmos Unidade III

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 5 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

Questão 1
A linguagem C oferece flexibilidade na criação de vetores de estruturas, permitindo assim a representação coleções de dados relacionados a uma entidade ou objeto do mundo real. Dada a seguinte declaração de estrutura, assinale a alternativa correta para a criação de um vetor de 20 elementos tipado com ela:
struct Livro {
           unsigned int id;
           char titulo[80];
           char autor[50];
           float preco;
           int estoque;
};
a. typedef Livro biblioteca[20];
b. struct Livro biblioteca[20];
c. struct biblioteca = Livro[20];
d. Livro biblioteca[20];
e. struct livro biblioteca[20];
Feedback
A resposta correta é: struct Livro biblioteca[20];.
Questão 2
As estruturas unidimensionais, conhecidas como vetores, consistem em um arranjo de elementos armazenados na memória principal, sequencialmente, todos com o mesmo nome (LOPES; GARCIA, 2002). As operações de atribuição, leitura e escrita são realizadas para cada elemento do vetor, de modo que não é possível operar sobre o vetor como um todo. Assinale a alternativa correta referente à forma correta de realizar operações elemento a elemento:
a. Usando uma função recursiva.
b. Usando apenas uma instrução para o primeiro elemento; os demais serão automaticamente executados.
c. Usando uma instrução para cada elemento do vetor.
d. Usando uma estrutura de repetição.
e. Usando uma estrutura de decisão múltipla.
Feedback
A resposta correta é: Usando uma estrutura de repetição.
Questão 3
Conforme visto em nossa apostila, não existe um tipo string na linguagem C – ele nada mais é do que um vetor de caracteres. Assinale a alternativa que corresponda à finalidade do símbolo '\0', em uma string:
a. Identificar uma string ainda não declarada.
b. Indicar o final de uma string.
c. Indicar um caractere especial dentro de uma string.
d. Identificar uma string nula ou vazia.
e. Indicar o início de uma string.
Feedback
A resposta correta é: Indicar o final de uma string.
Questão 4
Existem métodos que permitem verificar a existência de um valor dentro de um vetor, isto é, procurar dentre os elementos um determinado valor. Um deles o método de busca sequencial. Seguem algumas afirmações sobre este método:
I. O método consiste em percorrer o vetor a partir do último elemento, sequencialmente, até o primeiro.
II. A busca termina quando o elemento foi encontrado ou todo o vetor foi analisado, mas o elemento não foi encontrado.
III. A cada elemento do vetor são realizados testes lógicos, verificando se o elemento do vetor é igual ao elemento procurado.
IV. O tipo do vetor a ser percorrido deve ser do mesmo tipo do elemento a ser procurado.
Estão corretas:
a. I, II e IV apenas.
b. I, II e III apenas.
c. II, III e IV apenas.
d. III e IV apenas.
e. I e II apenas.
Feedback
A resposta correta é: II, III e IV apenas.
Questão 5
Existem métodos que permitem verificar a existência de um valor dentro de um vetor, isto é, procurar dentre os elementos um determinado valor. Um desses métodos é a busca sequencial, que consiste em percorrer o vetor elemento a elemento na procura do valor. Seguem algumas afirmativas sobre as formas de encerramento da busca sequencial:
I. Quando o valor procurado é encontrado em algum elemento do vetor pela primeira vez.
II. Quando o valor procurado é encontrado em dois ou mais elementos depois de percorrer todo o vetor.
III. Quando todo o vetor é percorrido, mas o valor não é encontrado.
IV. Quando um valor maior ao procurado é encontrado no vetor, compensando a falta do valor exato.
Estão corretas:
a. I, II e III apenas.
b. II, III e IV apenas.
c. I e II apenas.
d. II e IV apenas.
e. I e III apenas.
Feedback
A resposta correta é: I e III apenas.
Questão 6
O mecanismo de ordenação BubbleSort, conhecido também como método da bolha, faz uso de dois laços de repetição encadeados para realizar as comparações e as trocas de posições dos valores do vetor especificado. Assinale a alternativa referente ao número correto de trocas que o método BubbleSort realizará para ordenar o vetor { 3, 2, 1, 5, 4 }:
a. 10 trocas.
b. 5 trocas.
c. 3 trocas.
d. 4 trocas.
e. 12 trocas.
Feedback
A resposta correta é: 4 trocas.
Questão 7
Ordenação é o processo de rearranjar os elementos de acordo com um critério específico com o objetivo de facilitar a localização. Dentre os vários métodos de ordenação disponíveis, o método da bolha (BubbleSort) é o mais conhecido. Seguem algumas afirmativas sobre este método:
I. Ele consiste em percorrer o vetor diversas vezes, comparando os elementos atualmente em iteração.
II. Ao comparar os elementos em uma iteração, eles serão trocados caso estejam fora de ordem.
III. O número de repetições com que o vetor será percorrido é o seu número de elementos mais um.
IV. O método é finalizado quando todas as comparações entre os elementos são feitas.
Estão corretas:
a. I, II e IV apenas.
b. I e II apenas.
c. II, III e IV apenas.
d. III e IV apenas.
e. I e III apenas.
Feedback
A resposta correta é: I, II e IV apenas.
Questão 8
Os vetores são estruturas de dados que permitem armazenar dados do mesmo tipo, de forma sequencial. Seguem algumas afirmações sobre as características de um vetor na linguagem C:
I. Um vetor é declarado pelo nome da variável, seguido de colchetes, contendo o número de elementos.
II. A numeração dos elementos de um vetor deve obrigatoriamente iniciar em 0.
III. O índice para referenciar um elemento de vetor deve ser um valor constante.
IV. O acesso a um índice fora da faixa do número de elementos, definido no vetor, ocasionará um erro de compilação.
Estão corretas:
a. I e II apenas.
b. I, II e IV apenas.
c. I, II e III apenas.
d. III e IV apenas.
e. II, III e IV apenas.
Feedback
A resposta correta é: I e II apenas.
Questão 9
Segundo Lopes e Garcia (2002), as estruturas de dados unidimensionais, conhecidas como vetores, consistem em um arranjo de elementos armazenados na memória principal. Seguem algumas afirmativas sobre vetores:
I. Todos os elementos do vetor são do mesmo tipo.
II. A posição de cada elemento no vetor é indicada por uma letra.
III. Os vetores são declarados com seu número de elementos pré-determinado.
IV. Os elementos do vetor são armazenados na memória em uma única variável.
V. Não é possível manipular um vetor como um todo, mas cada elemento separadamente.
Estão corretas:
a. I, III, IV e V apenas.
b. I e II apenas.
c. I, II e III apenas.
d. I, IV e V apenas.
e. I apenas.
Feedback
A resposta correta é: I, III, IV e V apenas.
Questão 10
Vetores são arranjos de elementos armazenados na memória principal, um após o outro, todos com o mesmo nome. Utiliza-se um laço de repetição para fazer o armazenamento ou a leitura dos elementos de um vetor. Isto posto, assinale a alternativa correta referente ao problema contido no seguinte trecho de código:
float notas[] = { 6.0, 8.5, 5.5, 9.0 }, media = 0;
int i;
for (i = 0; i <= 4; i++)
         media += notas[i];
printf("Media: %.1f", media / 4);
a. Haverá erro de compilação porque não foi especificado o número de elementos em notas.
b. Haverá erro de execução porque o primeiro elemento deveria ser 1 e não 0.
c. Não será feita a divisão no segundo parâmetro da função printf() por causa da incompatibilidade dos tipos de dados envolvidos: media é float e 4 é int.
d. Em alguns compiladores, o valor final da média apresentado em printf() será incorreto porque foi somado o valor de uma posição de memória fora da faixa do vetor notas.
e. Haverá erro de execução ao tentar referenciar o elemento notas[4], para qualquer compilador C usado na geração do programa executável.
Feedback
A resposta correta é: Em alguns compiladores, o valor final da média apresentado em printf() será incorreto porque foi somado o valor de uma posição de memória fora da faixa do vetor notas.

Mais conteúdos dessa disciplina