Buscar

RESPOSTAS DAS UNIDADES DE ALGORITMOS E PROGRAMAÇÃO APLICADA

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 28 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 28 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 9, do total de 28 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

Prévia do material em texto

ALGORITMOS E PROGRAMAÇÃO APLICADA
UNIDADE 1
Questão 1
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A descrição narrativa consiste na representação de um algoritmo por meio da linguagem natural, descrevendo os passos que devem ser seguidos para a resolução de um problema. Assinale a alternativa correta referente à vantagem de se usar descrição narrativa.
a. Muito próximo à linguagem de programação.
b. Uso de figuras gráficas.
c. Riqueza de detalhes.
d. Facilidade de aprendizado.
e. Facilidade de entendimento dos símbolos.
Feedback
A resposta correta é: Facilidade de aprendizado.
Questão 2
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A linguagem C possui cinco tipos de dados básicos e três modificadores que permitem definir novos tipos de dados com tamanhos e faixa de valores específicos. Seguem algumas afirmações sobre os tipos de dados em C:
I. O tipo char não permite ser referenciado por valores numéricos.
II. O tipo unsigned int ocupa 2 bytes na memória dos computadores mais antigos.
III. Os tipos int e short int representam faixas de valores distintas.
IV. Os dois tipos que possuem tamanho de 32 bits são float e double.
Estão corretas:
a. II apenas.
b. I e II apenas.
c. I, III e IV apenas.
d. E II, III e IV apenas.
e. IV apenas.
Feedback
A resposta correta é: II apenas.
Questão 3
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
As linguagens de programação são divididas em linguagem de baixo nível, linguagem de montagem e linguagens de alto nível. Assinale a alternativa referente à diferença correta entre a linguagem de baixo nível e a linguagem de montagem:
a. A linguagem de máquina trabalha com o hardware da máquina e a linguagem de montagem, com os programas aplicativos.
b. A linguagem de máquina é formada por números binários (0 e 1), enquanto a linguagem de montagem é formada por números hexadecimais.
c. A linguagem de montagem utiliza a memória secundária para armazenar suas informações e a linguagem de máquina, a memória primária.
d. A linguagem de montagem é formada por códigos de instruções que são convertidos em código binário de linguagem de máquina.
e. A linguagem de máquina é voltada para arquiteturas CISC e a linguagem de montagem é voltada para arquiteturas RISC.
Feedback
A resposta correta é: A linguagem de montagem é formada por códigos de instruções que são convertidos em código binário de linguagem de máquina.
Questão 4
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
As palavras reservadas são os identificadores de comandos e variáveis internas da linguagem C e não devem ser utilizadas na escrita de um programa pelo usuário. De acordo com o nosso livro de estudo, assinale a alternativa correspondente a uma palavra que não é considerada reservada:
a. volatile.
b. default.
c. exit.
d. auto.
e. goto.
Feedback
A resposta correta é: exit.
Questão 5
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
C é uma linguagem compilada e, com isto, seus programas passam por algumas fases até o momento em que podem ser executados. Assinale a alternativa correta referente à fase onde o programa é transferido da memória secundária para a memória primária:
a. Editor.
b. Compilador.
c. Editor de ligação.
d. Pré-processador.
e. Carregador.
Feedback
A resposta correta é: Carregador.
Questão 6
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O fluxograma é um tipo de algoritmo no formato de uma notação gráfica que permite indicar as ações e decisões que devem ser seguidas para resolver um problema. Vários símbolos são utilizados na sua construção. Assinale a alternativa que corresponde à descrição correta do símbolo da seta orientada (→).
a. Indica a realização de cálculos e operações de atribuição.
b. Indica que deve ser tomada uma decisão, há possibilidade de desvio do fluxo.
c. Indica o início e o fim do algoritmo.
d. Indica o sentido do fluxo de dados.
e. Representa a saída de dados.
Feedback
A resposta correta é: Indica o sentido do fluxo de dados.
Questão 7
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O pseudocódigo, conhecido também como portugol ou português estruturado, é um tipo de algoritmo que consiste em regras pré-definidas para representar um problema a ser resolvido. De acordo com o exemplo ilustrado em nossa apostila, assinale a alternativa correspondente à única linha no algoritmo onde um cálculo matemático é efetuado:
a. Escreva(s)
b. Algoritmo "soma"
c. s < -n1 + n2
d. n1, n2, s: inteiro
e. Leia(n1, n2)
Feedback
A resposta correta é: s < -n1 + n2
Questão 8
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O termo algoritmo, do ponto de vista computacional, pode ser entendido como regras formais, sequenciais e bem definidas a partir do entendimento lógico de um problema a ser resolvido por um programador com o objetivo de transformá-lo em um programa que seja possível de ser tratado e executado por um computador, em que dados de entrada são transformados em dados de saída (MANZANO; OLIVEIRA, 2012). Seguem algumas afirmações sobre algoritmos:
I. Um algoritmo não é representação única para a solução de um determinado problema.
II. O aprendizado de algoritmos requer apenas intuição, não precisa de prática.
III. O conceito de algoritmos aplica-se somente dentro da programação.
IV. Existem diversos caminhos que conduzem à solução de um problema.
Estão corretas:
a. II e III apenas.
b. I e III apenas.
c. I, II e IV apenas.
d. I e IV apenas.
e. II, III e IV apenas.
Feedback
A resposta correta é: I e IV apenas.
Questão 9
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Os enumeradores são um tipo definido pelo usuário, utilizando se de uma lista de identificadores que se assemelham a constantes, e onde cada item desta lista corresponde a um valor do tipo int (DEITEL, 2011). Dada a seguinte declaração: enum cores { Preto = 1, Azul, Verde, Vermelho = 7, Rosa, Amarelo, Branco }; assinale a alternativa referente ao valor correto atribuído à constante Branco:
a. 10.
b. 12.
c. 7. 
d. 1.
e. 0.
Feedback
A resposta correta é: 10.
Questão 10
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Um algoritmo consiste em uma sequência finita de passos (instruções) para solucionar um problema. Uma instrução é uma operação básica que indica a um computador a ação que deve ser executada e, por isso, deve seguir uma regra fundamental. Analise as afirmativas abaixo e em seguida assinale a alternativa correta referente a ela:
a. Deve conter um texto explicando a finalidade daquela instrução dentro do algoritmo.
b. Devem ser atômicas, ou seja, não podem ser subdivididas em instruções menores.
c. Devem ser numeradas, de modo a estabelecer uma ordem na execução do algoritmo.
d. Devem necessariamente fazer parte de um esquema de fluxograma, de modo a ilustrar se é uma entrada/saída de dados, processamento ou tomada de decisão.
e. Não podem ser ambíguas, isto é, dar margem para duas ou mais interpretações.
Feedback
A resposta correta é: Não podem ser ambíguas, isto é, dar margem para duas ou mais interpretações.
UNIDADE 2
Questão 1
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A estrutura condicional composta permite a escolha de um entre dois caminhos possíveis, dependendo da avaliação de uma condição. Dado o seguinte código:
char tipo;
printf("Pessoa fisica ou juridica (F/J): ");
scanf("%c", &tipo);
if (tipo == 'F')
 printf("Voce possui um RG e um CPF");
else printf("Voce possui um CNPJ e uma Inscricao Estadual");
Assinale a alternativa referente ao que acontecerá se a letra "X" for informada pelo usuário:
a. Não executará nenhuma das instruções.
b. Não deixará prosseguir enquanto não for digitado "F" ou "J".
c. Executará a instrução subsequente ao else.
d. Executará a instrução subsequente ao if.
e. Resultará em um erro de execução.
Feedback
A resposta correta é: Executará a instrução subsequente ao else.
Questão2
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A estrutura condicional consiste em uma estrutura de controle de fluxo que permite executar um ou mais comandos se a condição testada for verdadeira ou executar um ou mais comandos se for falsa. Assinale a alternativa correta na qual a estrutura condicional não se aplica:
a. Autorizar saque de caixa eletrônico se a senha estiver correta.
b. Fazer uma ligação telefônica.
c. Desbloquear acesso a uma funcionalidade se o usuário for supervisor.
d. Decidir se um aluno está ou não aprovado.
e. Trocar lâmpada se estiver queimada.
Feedback
A resposta correta é: Fazer uma ligação telefônica.
Questão 3
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A estrutura condicional simples consiste na execução de uma ou mais instruções se uma dada condição for avaliada como verdadeira, do contrário estas instruções serão ignoradas e o fluxo será então desviado para a instrução seguinte à estrutura. Dado o seguinte trecho de código:
int ano;
printf("Informe o ano: ");
scanf("%d", &ano);
if (___________)
 printf("O ano eh bissexto");
Assinale a alternativa referente à condição correta a ser inserida na lacuna do if para que o texto subsequente possa ser impresso:
a. (ano / 2) * 4 == 0
b. ano * 4 == 0
c. (ano * 4) / 2 == 0
d. ano % 4 == 0
e. ano / 4 == 0
Feedback
A resposta correta é: ano % 4 == 0
Questão 4
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A estrutura de decisão múltipla permite a definição de inúmeros caminhos, os quais apenas um será selecionado e executado de acordo com o valor sendo avaliado. A partir dos conhecimentos que foram adquiridos nesta disciplina, analise o trecho de código a seguir:
char operador;
printf("Digite o operador (+,-,*,/): ");
scanf("%c", &operador);
switch (operador) {
case '+': printf("Adicao: %d", 15 + 10); break;
case '-': printf("Subtracao: %d", 15 - 10); break;
case '*': printf("Multiplicacao: %d", 15 * 10);break;
case '/': printf("Divisao: %.1f", 15.0 / 10.0);break;
default: printf("Operador inválido");
}
Assinale a alternativa referente ao resultado do cálculo que será apresentado na tela se o usuário digitar "*":
a. 1.5.
b. 150.
c. Operador inválido.
d. 25.
e. 5.
Feedback
A resposta correta é: 150.
Questão 5
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
As estruturas condicionais são muito importantes em linguagem de programação, pois permitem que o fluxo do programa seja desviado para atender a uma determinada condição. Seguem algumas afirmações sobre a sintaxe do comando if da linguagem C:
I. Os parênteses () que envolvem a condição depois da instrução if são opcionais.
II. As chaves {} são opcionais quando apenas uma instrução for executada em um if.
III. A linha do if deve ser obrigatoriamente terminada com um ponto-e-vírgula (;).
IV. Cada instrução dentro de um bloco com chaves {} deve ser terminada com um ponto e vírgula (;).
Estão corretas:
a. I, II e IV apenas.
b. I, II e III apenas.
c. II, III e IV apenas.
d. I e III apenas.
e. II e IV apenas.
Feedback
A resposta correta é: II e IV apenas.
Questão 6
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Na linguagem C, para escrever uma estrutura condicional composta, utilizamos a instrução else, que executará as instruções seguintes no caso da condição avaliada pelo if ser falsa. Considerando que podemos escrever toda a instrução if em uma linha, conforme visto na aula ao vivo, assinale a alternativa que corresponde a sintaxe correta no uso do else:
a. if condição { instruções; } else { instruções; }
b. if (condição); { instruções; } else { instruções; }
c. if (condição) { instruções; } else { instruções; }
d. if (condição) { instruções; } else; { instruções; }
e. if condição; { instruções }; else { instruções };
Feedback
A resposta correta é: if (condição) { instruções; } else { instruções; }
Questão 7
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Nos algoritmos sequenciais o fluxo é seguido de modo sequencial, ou seja, todas as instruções são executadas uma a uma. No entanto, em muitas situações necessita-se realizar algum teste antes de efetuar um processamento, e para isto serve a estrutura condicional. Assinale a alternativa que corresponde à sua correta definição:
a. Estrutura de armazenamento de dados a partir do teste de uma condição.
b. Estrutura de loop para efetuar o processamento de um trecho de código de acordo com a condição especificada.
c. Estrutura de controle de fluxo que executa comandos independentemente da condição ser verdadeira ou falsa.
d. Estrutura de controle de fluxo que executa um grupo de comandos se a condição testada for verdadeira ou executar outro grupo de comandos se a condição for falsa.
e. Estrutura de árvore que percorre seus nós a partir de uma condição verdadeira.
Feedback
A resposta correta é: Estrutura de controle de fluxo que executa um grupo de comandos se a condição testada for verdadeira ou executar outro grupo de comandos se a condição for falsa.
Questão 8
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O comando switch é a forma como implementamos estruturas de decisão múltipla na linguagem C, ou seja, várias condições podem ser avaliadas para o valor de uma expressão para que suas instruções correspondentes sejam executadas. Assinale a alternativa que corresponde ao que acontece quando omitimos a instrução break do final do bloco de instruções em um case:
a. O fluxo volta para a primeira instrução do bloco do case em questão.
b. O fluxo é desviado para a instrução seguinte ao bloco da instrução switch.
c. O fluxo segue para o bloco anterior de instruções case.
d. O fluxo segue para o bloco de instruções case subsequente.
e. O fluxo volta para o primeiro bloco case depois da instrução switch.
Feedback
A resposta correta é: O fluxo segue para o bloco de instruções case subsequente.
Questão 9
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O encadeamento de ifs é utilizado quando precisamos estabelecer a verificação de condições sucessivas, em que uma determinada ação poderá ser executada se um conjunto anterior de instruções ou condições for satisfeito. Assim, devemos considerar que a execução desta ação pode estabelecer novas condições dentro do algoritmo. Baseado nisto, assinale a alternativa correspondente ao número máximo de encadeamentos possíveis de ifs em um programa em C:
a. Três.
b. Ilimitado.
c. Duas.
d. Cinco.
e. Quatro.
Feedback
A resposta correta é: Ilimitado.
Questão 10
Completo
Atingiu 0,00 de 0,05
Não marcadaMarcar questão
Texto da questão
O operador de condição ternária verifica uma condição e retorna um dentre dois valores pré-definidos em sua estrutura. É uma alternativa para substituir o if…else em algumas situações. Assinale a alternativa correta referente à forma como a instrução abaixo pode ser reescrita usando o operador ternário:
if (idade < 18)
 printf("Voce eh menor de idade");
else
 printf("Voce eh maior de idade");
a. printf("Voce eh ", idade < 18 ? "menor" : "maior", " de idade");
b. printf("Voce eh %s de idade", idade < 18 ? "menor" : "maior");
c. printf("Voce eh %s de idade", idade < 18 ? "maior" : "menor");
d. printf("Voce eh (idade < 18 ? "menor" : "maior") de idade");
e. printf("Voce eh %s de idade", "menor" : idade < 18 ? "maior");
Feedback
A resposta correta é: printf("Voce eh %s de idade", idade < 18 ? "menor" : "maior");
UNIDADE 3
Questão 1
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. struct Livro biblioteca[20];
b. Livro biblioteca[20];
c. struct livro biblioteca[20];
d. struct biblioteca = Livro[20];
e. typedef Livro biblioteca[20];
Feedback
A resposta correta é: struct Livro biblioteca[20];
Questão 2
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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 estrutura de repetição.
b. Usando uma instrução para cada elemento do vetor.
c. Usando uma estrutura de decisão múltipla.
d. Usando apenas uma instrução para o primeiro elemento; os demais serão automaticamente executados.
e. Usando uma função recursiva.
Feedback
A resposta correta é: Usando uma estrutura de repetição.
Questão 3
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. Identificar uma string nula ou vazia.
c. Indicar o final de uma string.
d. Indicar um caractere especial dentro de uma string.
e. Indicar o início de uma string.
Feedback
A resposta correta é: Indicar o final de uma string.
Questão 4
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. III e IV apenas.
d. II, III e IV apenas.
e. I e II apenas.
Feedback
A resposta correta é: II, III e IV apenas.
Questão 5
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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 e III apenas.
b. I e II apenas.
c. II e IV apenas.
d. I, II e III apenas.
e. II, III e IV apenas.
Feedback
A resposta correta é: I e III apenas.
Questão 6
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. 3 trocas.
c. 5 trocas.
d.12 trocas.
e. 4 trocas.
Feedback
A resposta correta é: 4 trocas.
Questão 7
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. II, III e IV apenas.
b. I e II apenas.
c. I, II 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
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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. III e IV apenas.
b. I, II e III apenas.
c. I, II e IV apenas.
d. II, III e IV apenas.
e. I e II apenas.
Feedback
A resposta correta é: I e II apenas.
Questão 9
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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, IV e V apenas.
b. I, III, IV e V apenas.
c. I e II apenas.
d. I apenas.
e. I, II e III apenas.
Feedback
A resposta correta é: I, III, IV e V apenas.
Questão 10
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
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 execução porque o primeiro elemento deveria ser 1 e não 0.
b. Haverá erro de execução ao tentar referenciar o elemento notas[4], para qualquer compilador C usado na geração do programa executável.
c. Haverá erro de compilação porque não foi especificado o número de elementos em notas.
d. 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.
e. 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.
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.
UNIDADE 4
Questão 1
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcarquestão
Texto da questão
A linguagem C oferece o recurso da prototipagem, permitindo escrever funções depois da função main(). Assinale a alternativa correta referente ao que acontece quando definimos um protótipo de função:
a. O compilador é informado de que as funções prototipadas estão localizadas após a função main().
b. É criada uma cópia reduzida da função, antes da chamada da função main().
c. O protótipo da função é executado no lugar da função main().
d. A linguagem trata a função prototipada como desconhecida.
e. O compilador trata a função prototipada como externa.
Feedback
A resposta correta é: O compilador é informado de que as funções prototipadas estão localizadas após a função main().
Questão 2
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Uma sub-rotina consiste em trechos pequenos de instruções que realizam tarefas específicas, a fim de resolver um subproblema dentro de um problema maior, por meio de operações de entrada, processamento e saída (ASCENCIO; CAMPOS, 2010; MANZANO; OLIVEIRA, 1997). Seguem algumas afirmações sobre as vantagens do uso de sub-rotinas em algoritmos:
I. Dividem o problema maior em subproblemas, que podem ser resolvidos com as sub-rotinas.
II. Tornam o teste mais complexo.
III. Tornam o código reaproveitável, evitando trechos duplicados.
IV. Deixam o algoritmo mais legível.
Estão corretas:
a. I, II, e III apenas.
b. I, II e IV apenas.
c. I, III e IV apenas.
d. I e II apenas.
e. II e IV apenas.
Feedback
A resposta correta é: I, III e IV apenas.
Questão 3
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Ponteiros são variáveis que armazenam um endereço de memória, geralmente a posição de outra variável da memória; por isso o ponteiro “aponta” para outra variável (SCHILDT, 1996). Assinale a alternativa correta referente à declaração de um ponteiro para caractere:
a. char *ptc;
b. *ptc;
c. &c;
d. char_ptc ptc;
e. *char ptc;
Feedback
A resposta correta é: char *ptc;
Questão 4
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Funções são sub-rotinas que têm como objetivo desviar a execução do programa principal para realizar uma tarefa específica. Dada a seguinte declaração de função em C: char* diaSemana(int numero), assinale a alternativa correta referente ao significado de char* nesta declaração:
a. Indica o nome da sub-rotina chamadora.
b. Indica o nome do parâmetro sendo passado para a função.
c. Indica o tipo de dado a ser retornado pela função.
d. Indica o tipo de parâmetro sendo passado para a função.
e. Indica o nome da função.
Feedback
A resposta correta é: Indica o tipo de dado a ser retornado pela função.
Questão 5
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O processo de passagem de parâmetros permite estabelecer uma linha de comunicação entre os conteúdos dos trechos de sub-rotinas e dos trechos de programa que chamam essas sub-rotinas. Dado o seguinte trecho de código em C, assinale a alternativa correta:
void imprimeCabecalho(void) {
 ...
}
void calcula(void) {
int soma;
 ...
 imprimeCabecalho();
}
a. O escopo da variável soma é contido pela função imprimeCabecalho().
b. O tempo de vida da variável soma estende-se durante o tempo em que a função imprimeCabecalho() é executada.
c. O escopo da variável soma se estende da função calcula() para a função imprimeCabecalho().
d. O escopo da variável soma é dinâmico e se estende durante toda execução do programa.
e. O escopo e o tempo de vida da variável soma são iguais e contidos pela função imprimeCabecalho().
Feedback
A resposta correta é: O tempo de vida da variável soma estende-se durante o tempo em que a função imprimeCabecalho() é executada.
Questão 6
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
Um procedimento consiste em um trecho de código com início e fim e identificado por um nome, o qual é usado para chamar a rotina de qualquer parte do programa principal ou em uma sub-rotina qualquer. Em C, quando uma função é chamada isoladamente em uma linha de instrução, ela é executada e ao seu término o processamento retorna para _________________________________.
Assinale a alternativa que preenche corretamente a lacuna:
a. A próxima chamada de função em main().
b. O início da função chamada, para executá-la novamente.
c. A instrução seguinte à chamada da função executada.
d. O início da função main().
e. O final da função main().
Feedback
A resposta correta é: A instrução seguinte à chamada da função executada.
Questão 7
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A programação estruturada consiste na utilização de técnicas que decompõem a solução de um problema em “blocos” que interagem com um bloco principal. Assinale a alternativa referente ao motivo correto da linguagem C não ser tecnicamente estruturada em blocos:
a. Não permite que a função main() seja a primeira escrita no programa.
b. Não suporta passagem de parâmetros usando ponteiros de estruturas e uniões.
c. Não suporta passagem de parâmetros usando ponteiros de tipos de dados definidos pelo usuário.
d. Não permite definir uma função dentro de outra função.
e. Não permite recursividade.
Feedback
A resposta correta é: Não permite definir uma função dentro de outra função.
Questão 8
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
O operador unário sizeof obtém o tamanho em bytes de uma variável ou especificador de tipo de dado. Dado o seguinte programa em C, assinale a alternativa correta:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int somaAleatorios(int tamanho) {
 int numeros[tamanho], i, soma = 0;
 for (i = 0; i < tamanho; i++) {
 numeros[i] = rand() % 99;
 printf("numeros[%d] = %d\n", i, numeros[i]);
 soma += numeros[i];
 }
return soma;
}
int main(void) {
 int valor, tamanho = sizeof(int);
 srand(time(NULL)); // Geração aleatória de números
 valor = somaAleatorios(tamanho);
 printf("Valor da soma aleatoria: %d\n", valor);
 return 0;
}
a. A condição de parada do for deixará de processar um elemento do vetor numeros. A comparação correta seria i &lt;= tamanho.
b. A variável tamanho está sendo passada por referência para a função somaAleatorios().
c. A variável soma poderia ser declarada sem atribuição de valor: neste caso o compilador assumiria o valor 0 automaticamente para ela por ser do tipo int.
d. O vetor numeros poderá ter tamanho variado de acordo com a máquina e o sistema operacional onde o programa está sendo executado.
e. O programa resultará em um erro de execução por causa do NULL passado por parâmetro para a função time().
Feedback
A resposta correta é: O vetor numeros poderá ter tamanho variado de acordo com a máquina e o sistema operacional onde o programa está sendo executado.
Questão 9
Completo
Atingiu 0,05 de 0,05
Não marcadaMarcar questão
Texto da questão
A linguagem C permite que seus programas sejam modularizados, por meio do uso de funções, ou seja, a divisão do processamento em blocos de tarefas específicas. As funções geralmente retornam um valor, de acordo com o tipo com que ela foi declarada. Seguem algumas afirmações sobre funções em C:
I. As funções podem conter variáveis particulares a ela e pode também chamar outras funções.
II. Uma função pode não precisar retornar valor, bastando, para isso, declará-la com void.
III. Parâmetros, se existirem, devem ser passados e recebidos entre os parênteses da função.
IV. O comando return é utilizado para retornar um valor diferente do que foi declarado para a função.
Estão corretas:
a. I apenas.
b. III apenas.
c. III e IV apenas.
d. I, II e III apenas.
e. I e II apenas.
Feedback
A resposta correta é: I, II e III apenas.
Questão 10
Completo
Atingiu 0,00 de 0,05
Não marcadaMarcar questão
Texto da questão
Ponteiros são variáveis que armazenam um endereço de memória, geralmente a posição de outra variável da memória; por isso o ponteiro “aponta” para outravariável (SCHILDT, 1996). Dado o seguinte trecho de código em C, assinale a alternativa correta:
#include <stdio.h>
int main(void) {
 int c, *x1, *x2; x1 = &c;
 x2 = x1;
 printf("%p %p\n", x1, x2);
 return 0;
}
a. O código possui erros léxicos e sintáticos.
b. A sua execução apresentará na tela o resultado: “%p %p\n x1 x2”.
c. Sua execução apresentará uma mensagem de erro.
d. A sua execução apresentará dois valores iguais.
e. A sua execução não apresentará mensagens ou resultados.
Feedback
A resposta correta é: A sua execução apresentará dois valores iguais.

Continue navegando