Buscar

logica programação av2

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

Aula 1 
1a Questão 
 
Com relação a diretiva de pré compilação #define, pode-se dizer 
que: 
 
 
 É usada para parar a execução de um programa 
 
 É usada parra definições de funções (incluindo a função 
main()) 
 
 
 É usada para definição de constantes 
 
 É usada para inclusão de arquivos com declarações 
 
 É usada para declarações de objetos externos (protótipos de 
funções e variáveis) 
 
 
 
 2a Questão 
 
Arquivos em C podem representar tanto arquivos do sistema quanto 
dispositivos periféricos, verifique se está correto os arquivos pré-
definidos: 
 
 
 
stdout = Dispositivo de saída de erro padrão (normalmente o 
monitor) 
 
 
stdaux = Dispositivo de saída principal (normalmente a porta 
usb) 
 
 stdin = Dispositivo de entrada padrão (normalmente o teclado) 
 
stdprn = Dispositivo de abertura de txt padrão (normalmente a 
porta paralela) 
 
stderr = Dispositivo de saída padrão (normalmente o monitor) 
 
 
 
 
 
 
 3a Questão 
 
Acerca da Linguagem de Programação C, podemos afirmar que: I) 
Todo programa em C é composto de uma ou mais funções. II) Uma 
função main deve ser definida em cada programa. III) O C é case 
sensitive, ou seja, diferencia maiúsculas de minúsculas. IV) O C é 
baseado na Linguagem UAL. Marque somente a única resposta 
correta: 
 
 
Somente a afirmativa I é correta. 
 
Nenhuma das afirmativas é correta. 
 
Somente as afirmativas I e IV são corretas 
 
Somente as afirmativas I, II e III são corretas. 
 
Somente a afirmativa IV é correta. 
 
 4a Questão 
 
Observe as afirmativas abaixo e assinale a opção correta. 
I A linguagem C só pode tem uma função. 
II A única função obrigatória em um programa codificado na linguagem C é a 
função main(). 
III Muitas vezes, poderemos incluir várias bibliotecas em nossos programas se 
tivermos que usar algumas funções pré-definidas. 
IV Quando formos incluir bibliotecas, precisamos seguir uma ordem, começando 
pela biblioteca stdio.h, obrigatoriamente 
 
 
Somente a afirmativa II está correta 
 
As afirmativas II e III estão corretas 
 
Somente a afirmativa IV está correta 
 
As afirmativas III e IV estão erradas 
 
As afirmativas I e III estão erradas 
 
 
 
 
 5a Questão 
 
A diretiva #include < stdio.h> faz referência a: 
 
 
Declarações de funções para 
tratamento de texto. 
 
Declarações de funções para cálculo 
matemático. 
 
Declarações de funções úteis para 
entrada e saída de dados. 
 
Declaração de funções para 
tratamento numérico. 
 
Nenhuma das alternativas acima. 
 
 2a Questão 
 
Sabe-se que a linguagem C é uma das mais utilizadas no mundo. Desenvolvida 
em 1972 é uma linguagem voltada para programadores. Dentre as opções 
abaixo é incorreto afirmar: 
 
 
Permite a compilação de softwares para plataforma Windows, 
Linux e Unix. 
 
Possui características de Linguagem de baixo nível. 
 
Possui características de Linguagem de alto nível. 
 
Possui com conjunto muito grande palavras reservadas o que 
torna o aprendizado complexo 
 
Possibilita o desenvolvimento de funções próprias 
 3a Questão 
 
Qual a vantagem da Linguagem C que está descrita no texto abaixo? 
'Linguagem de fácil compreensão, uma vez que usamos três 
procedimentos básicos: sequência, seleção e iteração.' 
 
 
 
Simplicidade 
 
Estruturada 
 
Modularidade 
 
Rapidez 
 
Portabilidade 
 
 
 
 4a Questão 
 
Na história da linguagem C, alguns momentos foram marcantes devido a 
acréscimos e/ou modificações significativas embora nem todos os 
compiladores tenham aderido. Abaixo estão relacionadas alguns deles: 
 
- Surge o tipo long long para inteiros; 
- As funções matemáticas passam a aceitar todos os tipos numéricos; 
- O caracter // para comentário de uma linha, pode ser usado também; 
 
Assinale a opção que contem o nome do documento onde apareceram, pela 
primeira vez, as modificações acima. 
 
 
ISO/IEC 9899:1990 
 
Padrão C89 
 
Padrão C99 
 
Padrão C95 
 
C tradicional 
 
 
 
 5a Questão 
 
A Linguagem C foi inventada e foi implementada no inicio dos anos 
70 por Dennis Ritchie em um DEC PDP-11, usando o Sistema 
Operacional UNIX. 
Marque a alternativa CORRETA: 
 
 
A linguagem C é uma linguagem compilada e só pode ser 
executada no Windows. 
 
 
A linguagem C é uma linguaem interpretada e compilada mas 
só é executada no UNIX. 
 
 
A linguagem C é uma linguagem compilada e pode ser 
executada em vários sistemas operacionais. 
 
A linguaem C é uma linguagem interpretada e pode ser 
executada em vários sistemas operacionais. 
 
A linguagem C é uma linguagem interpretada e só pode ser 
executada no WINDOWS. 
 
 
 
 6a Questão 
 
Sabemos que a linguagem C apresenta várias vantagens. Quando 
dizemos que usamos três procedimentos básicos: sequência, 
seleção e iteração e que é possível gerar um executável rápido, 
estamos nos referindo às seguintes características na ordem: 
 
 
Portabilidade e Modularidade 
 
Rapidez e Portabilidade 
 
Portabilidade e Estruturada 
 
Complexidade e Estruturada 
 
Estruturada e Rapidez 
 
 
 
 
 
 
 
 7a Questão 
 
Após o surgimento de várias linguagens de Alto nível, surge a 
linguagem C . Qual a década em que foi desenvolvida? 
 
 
década de 80 
 
década de 90 
 
década de 70 
 
década de 60 
 
década de 50 
 
 8a Questão 
 
Na Aula 1, estudamos algumas características e vantagens da linguagem C. 
Observe as afirmativas abaixo e assinale a opção que contem a resposta 
correta. 
 
I Tem boa Portabilidade. 
II Não pode ser modularizada. 
III É uma linguagem Orientada a Objetos. 
IV Uma linguagem que pode manipular endereços de memória. 
V Não possui um propósito especifico. 
 
 
As afirmativas I, IV e V estão corretas e as demais, erradas. 
 
As afirmativas I e IV estão corretas e as demais, erradas. 
 
As afirmativas II, IV e V estão corretas e as demais, erradas. 
 
As afirmativas II, III e IV estão corretas e as demais, erradas. 
 
As afirmativas IV e V estão corretas e as demais, erradas. 
 
1a Questão 
 
Para que possamos criar nossos programas na linguagem C, 
iniciamos por criar o ______________, o qual pode ser feito através 
de um editor de texto não formatado e salvo com a 
______________ ou mesmo utilizar um editor da linguagem, como o 
DEV C++. De acordo com o sistema operacional isto pode ser um 
pouco diferente. Após esta etapa, devemos ___________ e linkeditar 
o programa gerando o arquivo _____________, o qual após ser 
executado apresenta o resultado de nosso programa. 
Das opções apresentadas, marque aquela que completa 
respectivamente e corretamente os espaços em branco destacados 
do texto, segundo os conceitos da linguagem C apresentados no 
material didático da disciplina. 
 
 
Fonte - extensão .txt - editar - executável 
 
Código base - extensão .c - compilar - fonte 
 
Código de texto - extensão .txt - editar - fonte 
 
Executável - extensão .c - compilar - fonte 
 
Código fonte - extensão .c - compilar - executável 
 
 
 2a Questão 
 
Qual o nome da diretiva que é usada para incluir arquivos dentro do 
programa fonte que estivermos construindo? 
 
 
const 
 
typedef 
 
include 
 
define 
 
struct 
 
 3a Questão 
 
Qual a vantagem da Linguagem C que está descrita no texto abaixo?'Permite que o desenvolvedor defina suas funções.' 
 
 
Portabilidade 
 
Simplicidade 
 
Modularidade 
 
Rapidez 
 
Estruturada 
 
 4a Questão 
 
A Linguagem C tem algumas características importantes e uma 
delas é a Portabilidade, Isso significa dizer que: 
 
 
Com pequenas alterações, o programa poderá ser compilado em 
várias plataformas. 
 
Um programa executável gerado na plataforma Windows é 
executado na Plataforma Linux. 
 
Podemos dividir o programa em parte menores. 
 
A linguagem possui um propósito específico. 
 
Por ser considerada uma linguagem de baixo nível é mais 
simples migrar para outra plataforma. 
 
 
 
 
 
 5a Questão 
 
No ambiente Linux, não precisamos, obrigatoriamente, ter um 
único ambiente para editar, compilar e executar um programa 
codificado na linguagem C como temos no Windows. 
Sendo assim, qual seria a sequência para conseguirmos editar, 
compilar e executar um programa? 
 
 
Usar um editor de texto para digitar o código/ salvar sem se 
preocupar com extensão/ e digitar uma linha de comando, 
também no terminal, usando o compilador gcc. 
 
Usar o terminal para digitar o código/ salvar sem se preocupar 
com extensão/ e digitar uma linha de comando, também no 
terminal, usando o compilador gcc. 
 
Usar um editor de texto para digitar o código/ salvar com 
extensão c/ digitar uma linha de comando no terminal, usando o 
compilador gcc que irá gerar o executável e executá-lo em 
seguida. 
 
Usar um editor de texto para digitar o código e salvar com 
extensão c/ digitar uma linha de comando no terminal usando o 
compilador gcc para gerar o executável/ digitar o nome do 
executável, precedido por ./ no terminal para executá-lo. 
 
Usar um editor de texto para digitar o código e salvar com 
extensão c/ digitar uma linha de comando no terminal usando o 
compilador gcc para gerar o executável / digitar o nome do 
executável no terminal para executá-lo. 
 
 
 7a Questão 
 
Acerca das variáveis, podemos destacar que os tipos básicos do C, 
são: 
 
 
string, int, float e double. 
 
char, bool, real e int. 
 
Nenhuma das alternativas acima 
 
char, int, float e double. 
 
int, texto, inteiro e double. 
 
 
 
 8a Questão 
 
No ambiente Dev-cpp, temos algumas facilidades. Uma delas é 
quando desejarmos compilar e executar logo em seguida com um 
único clique ou um pressionamento de uma tecla. 
Analise as afirmativas abaixo e escolha a opção correta 
I Pressionar F9(pode ser F11 em versões mais novas) 
II Clicar no ícone Compilar 
III Clicar no ícone Executar 
IV Clicar no ícone Compilar e Executar 
 
 
Tanto a I quanto a IV possibilitam isso 
 
Só a III possibilita isso 
 
Só a I possibilita isso 
 
Só a II possibilita isso 
 
Só a IV possibilita isso 
 
1a Questão 
 
 IDE, do inglês Integrated Development Environment ou Ambiente 
de Desenvolvimento Integrado, é um programa de computador que 
reúne características e ferramentas de apoio ao desenvolvimento de 
software com o objetivo de agilizar este processo.Geralmente os 
IDEs facilitam a técnica de RAD (de Rapid Application Development, 
ou "Desenvolvimento Rápido de Aplicativos"), que visa a maior 
produtividade dos desenvolvedores. 
Marque a alternativa ERRADA relativa as ferramentas mais comuns 
encontradas nos IDEs: 
 
 
Ativador - ativa o código fonte para que o mesmo seja executado 
em qualquer sistema operacional. 
 
Depurador (debugger) - auxilia no processo de encontrar e 
corrigir defeitos no código-fonte do programa, na tentativa de 
aprimorar a qualidade de software; 
 
Compilador (compiler) - compila o código-fonte do programa, 
editado em uma linguagem específica e a transforma em 
linguagem de máquina; 
 
Linker - liga (linka) os vários "pedaços" de código-fonte, 
compilados em linguagem de máquina, em um programa 
executável que pode ser executado em um computador ou outro 
dispositivo computacional; 
 
Editor - edita o código-fonte do programa escrito na(s) 
linguagem(ns) suportada(s) pela IDE; 
 
 
 
 2a Questão 
 
Uma das características mais marcantes da linguagem C é a sua 
portabilidade. Os códigos escrito em C são portáveis, o que significa 
que é possível executa-los nos mais diferentes tipos de arquiteturas. 
Tendo um programa C compilado para Windows, para executa-lo em 
Linux, identifique a opção CORRETA: 
 
 
Só é possível copiar o código executável do Linux para o 
Windows e executa-lo. 
 
Ocorrerá erro, pois os programas C não rodam em Linux. 
 
Basta apenas copiar o código executável para o Linux e 
executa-lo. 
 
Precisamos recompilar o código fonte para o Linux. 
 
Ocorrerá erro, pois todas as instruções da linguagem C são 
incompatíveis com o Linux. 
 
 
 
 
 
 
 5a Questão 
 
Um dos grandes problemas de empresas que desenvolvem software 
é a variedade hardware. Como por exemplo, em grandes redes de 
supermercados, o software instalado não pode ser trocado sem 
maiores custos e traumas. A linguagem C possui a capacidade de ser 
compilado ou executado em diferentes arquiteturas (seja de 
hardware ou de software). Identifique abaixo a capacidade descrita. 
 
 
Reuso 
 
Portabilidade 
 
Modularidade 
 
Polimorfismo 
 
Flexibilidade 
 
 6a Questão 
 
A linguagem C/C++ apresenta vantagens e desvantagens em sua 
utilização. Considere as seguintes afirmativas: 
|) Possibilidade em programação de alto e baixo nível; 
||) Grande período para o aprendizado. 
|||) Adequação a grandes projetos; 
 
Assinale a alternativa que contem apenas vantagens da linguagem C++. 
 
 
| e || 
 
Apenas | 
 
Apenas ||| 
 
|| e ||| 
 
| e ||| 
 
 7a Questão 
 
Em C++, quando temos variáveis do tipo CPF, identidade, 
matrícula, número do telefone, apesar de serem números não 
fazemos cálculo com eles. Logo podemos declarar estas variáveis 
como do tipo: 
 
 
boolean 
 
string 
 
float 
 
char 
 
int 
 
 
 
 8a Questão 
 
Qual das características abaixo NÃO pode ser atribuída á linguagem 
C? 
 
 
Portabilidade 
 
Modularidade 
 
Rapidez, pois gera executável compacto 
 
Estruturada 
 
Complexidade porque tem muitas palavras reservadas 
 
 
 
 
 
 
 
 
 
 
Aula 2 
 
1a Questão 
 
Qual a função da stdio.h que exibe formatado um, ou vários 
caracteres, constante numérica, conteúdo de variável, retorno de 
função? 
 
 
msg("string") 
 
scanf("string") 
 
puts("string") 
 
putchar("string") 
 
 
printf("string") 
 
 
 
 
 2a Questão 
 
Um Engenheiro Mecânico tinha um arquivo onde ele gostaria que os 
nomes dos materiais fossem todos convertidos para letras 
minúsculas. 
Observe as linhas abaixo e assinale a opção que contem a função 
que realiza essa conversão e a biblioteca a qual pertence. 
 
 
atof() e stdlib.h 
 
isalpha() e stdlib.h 
 
atoi() e math.h 
 
toupper() e stdlib.h 
 
tolower() e ctype.h 
 
 
 
 4a Questão 
 
Em um programa, precisávamos usar as bibliotecas: math.h, 
stdio.h e stdlib.h. 
Assinale o trecho correto que possibilita incluí-las. 
 
 
#include stdio.h 
#include stdlib.h 
#include math.h 
 
#include 
 
#include 
#include 
#include 
 
 
#define 
#define 
#define 
 
 
#include 
 
 
 
 5a Questão 
 
No comando: printf("Esteé o numero: %d", 8); O que é o número 
"8"? 
 
 
Um endereço 
 
Uma variável 
 
Um ponto flutuante 
 
Uma constante 
 
Um caractere 
 
 
 6a Questão 
 
Qual o nome da função matemática que calcula a potenciação de 
um número? 
 
 
elevado 
 
double 
 
pow 
 
sqrt 
 
pot 
 
 
 
 7a Questão 
 
Um Engenheiro estava construindo um trecho de programa onde 
pedia que o usuário respondesse com uma letra ou um algarismo. 
Se o usuário não tivesse respondido, ele enviaria uma mensagem 
de erro. 
Ele sabia que precisava aprender mais alguma estrutura, mas, no 
momento, pensou em experimentar uma função que pudesse lhe 
dar um retorno. 
Pesquisou nas bibliotecas estudadas na aula 2 e achou. 
Qual o nome dessa função? 
 
 
isnotalphadigit() 
 
isalpha() 
 
isalnum() 
 
isspace() 
 
isdigit() 
 
 
 
 6a Questão 
 
Você estava trabalhando na plataforma Windows e foi definindo 
várias funções específicas para sua área de atuação. 
Um dia, resolveu criar uma biblioteca e nomeou de 
minhasFuncoes.h, salvando em uma pasta de nome funcoes na raiz 
do drive C. 
Quando foi incluir, usou: 
 
 
#include "minhasFuncoes.h" 
 
#include 
 
#include "c:\funcoes\ minhasFuncoes.h" 
 
#include minhasFuncoes.h 
 
#include "c:\ minhasFuncoes.h\funcoes" 
 
 
 4a Questão 
 
Sabemos que para a utilização de funções da linguagem C 
precisamos declarar suas respectivas bibliotecas. 
De acordo com a Linguagem C marque a opção em que o descritivo 
da biblioteca está correto. 
 
 
string.h - Funções 
para concatenação de 
strings com inteiros. 
 
math.h - Funções 
matemáticas 
 
stdlib.h - Funções de 
entrada e saida. 
 
stdio.h - Funções para 
gráficos. 
 
time.h - Funções para 
manipulação de tempo, 
apenas horas, minutos e 
segundos. 
 
1a Questão 
 
Se você precisasse exibir 123.45 onde o total de algarismos da parte inteira 
com a parte decimal seria igual a 8, preenchendo com zero as que não fossem 
necessárias e com três algarismos na parte decimal, qual das opções 
abaixo você escolheria? 
 
 
printf("%f\n", 123.45); 
 
printf("%08.3f\n", 123.45); 
 
printf("%09.3f\n", 123.45); 
 
printf("%8f3\n", 123.45); 
 
printf("%.3f\n", 123.45); 
 
 
 
 3a Questão 
 
Temos linhas e colunas na tela. A um conjunto de 8 colunas, chamamos de 
zona. 
Estudamos os caracteres \n e \t na Aula 2 
Se você precisasse exibir VOU na terceira zona de uma linha estando o 
cursor na primeira coluna dessa linha e GABARITAR na segunda zona de 
uma linha que tem, antes dela,duas linhas em branco, qual das opções 
abaixo você escolheria? 
 
 
 
printf("\t\t\tVOU\n\n\tGABARITAR\n"); 
 
printf("\t\tVOU\n\n\n\tGABARITAR\n"); 
 
printf("\t\tVOU\n\tGABARITAR\n"); 
 
printf("\t\t\tVOU\n\tGABARITAR\n"); 
 
printf("\t\tVOU\n\n\tGABARITAR\n"); 
 
 
 
 4a Questão 
 
Estudamos alguns caracteres especiais que lhe ajudam a formatar a saída 
de seus programas. Eles também são conhecidos como caracteres de controle 
ou sequência de escape por serem sempre precedidos pela \ cujo nome em 
inglês é backslash e por aqui é conhecida como barra invertida ou contra-
barra. 
Observe a linha abaixo e selecione a resposta que mostra e/ou explica o que 
será exibido no display. 
 printf ("RESULTADO =\\%07d\\\n", 123); 
 
 
RESULTADO =\0000123\ 
 
RESULTADO =\\0000000123\\ 
 
RESULTADO = 0000123 
 
RESULTADO =\\0000123\\ 
 
RESULTADO = 0000000123 
 
 
 
 5a Questão 
 
Se a variável p está armazenando o valor 6, qual valor será 
armazenado na variável r após ser axecutada a função: r = pow 
(r,3) 
 
 
36 
 
216 
 
126 
 
98 
 
18 
 
 
 
 
 6a Questão 
 
Quais as funções da biblioteca stdio.h, da linguagem C usadas para 
exibir mensagens na tela? 
 
 
 
putchar("string") e printf("string") 
 
printf("string") e puts("string") 
 
printf("string") e msg("string") 
 
msg("string") e puts("string") 
 
putchar("string") e puts("string") 
 
 
 7a Questão 
 
A biblioteca ctype.h é composta de funções que manipulam um 
caracter.Uma destas funções é toupper(char). 
Marque a alternativa que indica o retorno desta função: 
 
 
 
Retorna uma letra convertida para minúscula 
 
Retorna diferente de 0 se o argumento for uma letra ou 
número 
 
Retorna uma letra convertida para maiúscula 
 
Retorna diferente de 0 se o argumento for um número 
 
Retorna diferente de 0 se o argumento for uma letra 
 
 
 
 
 
 8a Questão 
 
Saída formatada necessita de muita atenção. 
Se você precisasse exibir 12345 utilizando 8 casas e preenchendo com zero as 
que não fossem necessárias, qual das opções abaixo você escolheria? 
 
 
printf("%80d\n", 12345); 
 
printf("%d\n", 12345); 
 
printf("%d8\n", 12345); 
 
printf("%08d\n", 12345); 
 
printf("%8d\n", 12345); 
 
 
1a Questão 
 
Qual a funções da biblioteca stdio.h, da linguagem C usada 
exclusivamente para exibir apenas um caracter na tela? 
 
 
scanf('char') 
 
printf('char') 
 
 
msg('char') 
 
 
putchar('char') 
 
 
puts('char') 
 
 
 2a Questão 
 
Qual será a saída do comando abaixo: printf("O valor de Pi é %.6f", 
pi); 
 
 
O valor de Pi é pi 
 
O valor de Pi é 3.14 
 
O valor de Pi é 3,14 
 
O valor de Pi é 3.1415926535897932384626433832795 
 
O valor de Pi é 3.141592 
 
 
 
 3a Questão 
 
Assinale a função que não é disponível na plataforma Linux. 
 
 
return 
 
printf() 
 
main() 
 
system() 
 
scanf() 
 
 5a Questão 
 
Qual biblioteca da linguagem C contém as funções para exibir 
mensagens na tela? 
 
 
 
stdstring.h 
 
 
tela.h 
 
math.h 
 
Cio.h 
 
stdio.h 
 
 
 
 6a Questão 
 
Na Linguagem C, encontramos três funções que podem exibir na tela. 
Leia com atenção as afirmativas abaixo e selecione a opção correta 
I A função puts() exibe uma cadeia de caracteres, mas não exibe conteúdo de 
variáveis. 
II A função printf() exibe cadeia de caracteres, conteúdo de variáveis de 
qualquer tipo, resultado de expressões. 
III A função putchar() exibe uma cadeia de caracteres ou o conteúdo de 
variáveis do tipo char com um caractere ou um conjunto de caracteres. 
 
 
 
A afirmativa I está errada e as demais corretas 
 
A afirmativa II está errada e as demais corretas 
 
Todas as afirmativas estão corretas 
 
A afirmativa III está errada e as demais corretas 
 
A afirmativa II é a única correta 
 
 
 
 7a Questão 
 
Um aluno precisava fazer uma citação e deveria colocar uma frase entre 
aspas. 
Escolha a opção que poderá resolver o problema dele. 
 
 
printf(\"LPI\"); 
 
Como as aspas são usadas para delimitar a cadeia, não se pode fazer 
isso. 
 
 
printf("\"LPI\"); 
 
A solução seria usar aspas simples duas vezes para substituir 
printf("''LPI''"); . 
 
printf("\"LPI\""); 
 
 
 
 8a Questão 
 
Se executarmos o comando printf(ceil(3.2));.O que será exibido na 
tela? 
 
 
 
4 
 
 
0.2 
 
 
3.2 
 
 
3 
 
4.2 
 
 
 
Aula 3 
 
 1a Questão 
 
Um aluno sabia que, no Código ASCII os algarismo de 0 a 9 têm códigos no 
intervalo fechado de 48 a 57. 
Ele viu várias linhas em umprograma e gostaria de saber qual a linha que 
estava exibindo o algarismo de código 51. 
int num=51; 
 
 
 
printf("\nValor de num: %c ",num); 
 
printf("\nValor de num: %.f ",(float)num); 
 
 
printf("\nValor de num: %.4d",num); 
 
printf("\nValor de num: %d ",num); 
 
printf("\nValor de num: %.f ",num); 
 
 
 
 
 
 
 
 
 
 3a Questão 
 
 
O programa em C na figura abaixo, tem a finalidade de calcular a 
média e comparar tal média com o valor armazenado em i. Porém o 
programa não irá funcionar corretamente em sua execução. Marque 
a alternativa que corresponda em qual linha numerada (de 1 a 
13) do código-fonte se encontra o erro de programação. 
 
 
 
Linha 11 
 
Linha 9 
 
Linha 1 
 
Linha 10 
 
Linha 12 
 
 
 
 4a Questão 
 
Considerando que a variável TemperC receba valor de temperatura 
em graus Celsius digitado pelo usuário e que a variável TemperF 
seja o resultado da temperatura de entrada em graus Fahrenheit, 
qual seria a linha de comando correta, sabendo que oF = oC x 1,8 
+ 32. 
 
 
TemperF = TemperC * (1.8 + 32) 
 
TemperF = TemperC * 1,8 + 32 
 
TemperF = (TemperC * 1,8) + 32 
 
TemperF = TemperC x 1.8 + 32 
 
TemperF = (TemperC * 1.8) + 32 
 
 5a Questão 
 
Analise o trecho de código a seguir e marque a opção que 
representa o valor armazenado na variável media. 
 
int a,b ; 
float media; 
a=5; 
b=2; 
media=a/b; 
 
 
 
3.0 
 
5 
 
 
2 
 
 
3 
 
 
2.5 
 
 
 
 
 6a Questão 
 
A linguagem C/C++ utiliza variáveis, que podem ser classificadas como globais ou 
locais. 
Dentre as opções, assinale a que expressa corretamente à definição de "variável 
global" da linguagem C/C++. 
 
 
São declaradas dentro do main(). E suas variáveis são escritas 
dentro do escopo das funções. 
 
Não mantêm seu valor em todo o programa e suas variáveis são 
escritas dentro do escopo das funções. 
 
São declaradas no início de um bloco. Seus escopos estão 
restritos aos blocos em que essas variáveis foram declaradas. 
 
Mantêm seu valor em todo o programa e suas variáveis são 
escritas fora do escopo das funções. 
 
São declaradas no final de um bloco. Seus escopos não estão 
restritos aos blocos em que essas variáveis foram declaradas. 
 
 
 
 
 7a Questão 
 
Um aluno declarou uma variável real da seguinte forma: float num =145.1; 
Qual linha ele deverá incluir em seu programa para que exiba o conteúdo 
com quatro casas à esquerda do ponto decimal e, as demais, à direita. 
 
 
printf("\nValor de num: %.2f ",num); 
 
printf("\nValor de num: %8.3f ",num); 
 
printf("\nValor de num: %d ",(int)num); 
 
 
printf("\nValor de num: %08.2f ",num); 
 
printf("\nValor de num: %.4d",num); 
 
 
 
 8a Questão 
 
Na linguagem C, uma variável pode ser classificada como LOCAL ou 
GLOBAL. De acordo com as características das variáveis LOCAIS, marque a 
alternativa ERRADA. 
 
 
Duas, ou mais funções, podem declarar variáveis locais com os 
mesmos nomes. 
 
A função main() pode acessar qualquer variável local de qualquer 
função. 
 
Uma variável local só é visualizada pela função onde foi declarada. 
 
As variáveis locais não podem ser acessadas de fora do escopo 
em que foram criadas. 
 
Existem funções que não têm variáveis locais. 
 
 
1a Questão 
 
 
 
 7a Questão 
 
A declaração de uma variável na linguagem C é realizada com a 
informação do tipo de dado que a variável irá armazenar em 
seguida o nome da variável. 
Que tipo de informação é passada para o sistema operacional 
quando na declaração de uma variável informamos o tipo de dado 
que esta irá armazenar. 
 
 
endereço de memória alocada 
 
tipo de memória alocada 
 
quantidade de memória alocada 
 
nenhuma informação pra o sistema operacional 
 
qualidade da memória alocada 
 
 
 
 8a Questão 
 
Escolha a opção que inclui somente nomes válidos para variáveis na 
linguagem C. 
 
 
2nota, a36, x#y, --j 
 
2_ou_1, fim, *h, j 
 
i, j, int, obs 
 
If, nota_do_aluno_2, HOJE, _yes 
 
nota-2 , a36, x_y 
 
 
 
 
 
 3a Questão 
 
Na linguagem de programação C, como em outras, na criação de 
programas, devemos definir os tipos de dados para nossas 
variáveis de acordo com o problema em questão. 
Das opções apresentadas qual possui apenas tipos da linguagem C, 
conforme o material apresentado nas aulas. 
 
 
char, int, real, double, void 
 
char, int, float, double, boolean 
 
char, int, real, double, boolean 
 
char, int, float, double, void 
 
char, integer, float, real, boolean 
 
 
 
 4a Questão 
 
Um programador escreveu o seguinte trecho de código: 
int a,b,c,x,y,z; 
a = 1; 
b = 2; 
c = 3; 
x=a++; 
y=++b; 
z=--c; 
Qual o valor das variáveis a,b,c,x,y,z, respectivamente, ao final da 
execução do trecho em questão? 
 
 
2,3,4,2,3,1 
 
2,1,2,1,3,2 
 
2,3,2,1,3,2 
 
1,2,3,2,1,3 
 
1,2,3,2,3,1 
 
 
 
 
 5a Questão 
 
Observe o trecho de código em Linguagem C #include main () { char 
Ch; scanf("%c", Ch); printf ("Você pressionou a tecla %c",Ch); } Na 
execução do código acima, ao pressionar qualquer tecla, o resultado 
sera 
 
 
Imprime a tecla 
pressionada. 
 
O programa não 
é executado. 
 
Ocorre um erro 
na alocação do 
valor digitado 
para variável na 
memória. 
 
Imprime o texto 
Você pressionou 
a tecla Ch. 
 
Não retorna 
nenhum valor. 
 
 
 7a Questão 
 
 
: 
 
 
duas 
 
 
uma1 
 
1uma 
 
uma 
 
duas2 
 
 
 
 8a Questão 
 
Estava pesquisando na internet, quando li, num fórum, um pedido de ajuda 
que incluía um programa codificado na linguagem C, apresentado abaixo. A 
pessoa não tinha um compilador e não estava conseguindo analisar o 
programa. Acompanhei no Teste de Mesa, supondo que eu teria digitado 345 
quando foi solicitado um número inteiro de três algarismos. Assinale a 
resposta CORRETA que apresenta o que foi exibido na tela. 
 
 
 
 
-0012 ( Representa a soma dos algarismos do número -345 
formatado) 
 
- 0.00289(O inverso do número formatado) 
 
0543(O valor absoluto do número espelhado formatado) 
 
0343 (O valor absoluto do resultado da expressão formatada) 
 
0345 (O valor absoluto do número formatado) 
 
 
 
1a Questão 
 
Sabe-se que os códigos das letras Maiúsculas se encontram no intervalo 
fechado de 65 a 90(A-Z) e os das letras Minúsculas se encontram no intervalo 
fechado de 97 a 122(a-z) 
Qual das linhas abaixo apresenta a letra e Minúscula? 
char c='A'; 
 
 
printf("\nValor de c: %c ",c); 
 
printf("\nValor de num: %c ",toupper(c)+3); 
 
printf("\nValor de num: %c",tolower(c)+4); 
 
printf("\nValor de c: %d ",c); 
 
printf("\nValor de c: %f ",c); 
 
 
 
 
 
 3a Questão 
 
Dado o programa na linguagem de programação C abaixo , informe 
qual os valores das variáveis x, y, a, b, c e d, respectivamente, ao 
final de sua execução: 
 
#include 
#include 
int main(int argc, char *argv[]) { 
 int a,b,c,d,x,y; 
 x=10; 
 y=5; 
 a=x++; 
 b=++x; 
 c=--y; 
 d=y--; 
 printf("%d\n",x); 
 printf("%d\n",y); 
 printf("%d\n",a); 
 printf("%d\n",b); 
 printf("%d\n",c); 
 printf("%d\n",d);return 0; 
} 
 
 
12, 3, 10, 12, 4, 4 
 
12, 3, 11, 11, 5, 3 
 
11, 7, 12, 10, 3, 5 
 
11, 6, 10, 11, 5, 6 
 
12, 7, 10, 10, 6, 4 
 
 
 
 5a Questão 
 
Em C++, qual o símbolo usado para representar resto da divisão? 
 
 
% 
 
/ 
 
mod 
 
div 
 
// 
 
 
 
 
 6a Questão 
 
Com relação a uma variável global podemos afirmar que: 
 
 
 
O identificador de uma variável global inicia obrigatoriamente 
com com o caracter 'G'. 
 
 
A declaração de uma variável global é feita fora de qualquer 
escopo do programa, inclusive fora da função main(). 
 
 
Só é possivel acessar essa variável dentro do escopo da função 
que esta foi declarada 
 
 
A declaração de uma variável global é feita sempre dentro da 
função main() 
 
 
O identificador de uma variável global será feito 
obrigatoriamente com caracteres maiúsculos 
 
 
 
 
 
 7a Questão 
 
Analisando o código a seguir, que usa a função getchar(), podemos 
dizer: 
/* programa getchar.c */ 
 
#include 
int main(void) 
{ 
 char cLetra; 
 
 cLetra = getchar(); 
 
 printf("Letra digitada %c\n", cLetra); 
 printf("Na tabela ASCII %d\n", cLetra); 
 return 0; 
} 
 
 
O código está correto, pois a função getchar(), não tem 
nenhuma ação nesse código. 
 
O código está errado, pois a função getchar() deve ser usada 
apenas para dar uma pausa no código. 
 
 
O código está errado, pois a função getchar() retorna um 
número e seu retorno não pode ser atribuído a uma variável do 
tipo char. 
 
 
O código está correto, embora a função getchar() retorne um int 
e este está sendo atribuído a uma variável tipo char. 
 
O código está errado, pois a função getchar() nunca retorna um 
número. Portanto não pode-se usar a linha printf("Na tabela 
ASCII %d\n", cLetra); 
 
 
 
 
 
 
 8a Questão 
 
Um aluno viu o trecho de programa abaixo e não sabe qual das linhas daria 
como resposta 4.50 
int num1=3, num2=6, num3=4; 
Indique a linha. 
 
 
printf("\nResultado: %.2f ",(float)num1 + num2/num3); 
 
printf("\nResultado: %d ",num1 + num2/num3); 
 
printf("\nResultado: %.2d",num1*1.0 + num2/num3); 
 
printf("\nResultado: %.2f ",(float)(num1 + num2/num3)); 
 
printf("\nResultado: %.2f ",num1 + (float)num2/num3); 
 
 
 
 
AULA 4 
 
1a Questão 
 
Observe o trecho do programa abaixo: 
float a, b, c; 
printf("\n Digite o primeiro numero: "); scanf ("%f",&a); 
printf("\n Digite o segundo numero: "); scanf ("%f",&b); 
if (a >= b) { printf("Valor de c: %f" , c = a + b); } else { 
printf("Valor de c: %f" , c = a - b); } 
Se o usuário digitar os números abaixo, marque a opção que 
contém as saídas corretas. 
10 e 5 ; 8 e 8 ; 3 e 9 ; 25 e 15 ; 6 e 32. 
 
 
15 ; 0 ; -6 ; 35 ; 26 
 15 ; 16 ; 6 ; 40 ; -26 
 
16 ; 0 ; -6 ; 40 ; 26 
 
16 ; - 16 ; -6 ; 40 ; -26 
 15 ; 16 ; -6 ; 40 ; -26 
 
 2a Questão 
 
Um programa deve ler um valor inteiro. Caso o valor lido seja 
positivo deve imprimir a mensagem "Valor positivo". Assinale a 
opção que apresenta estrutura condicional CORRETA para a 
solução desse problema. 
 
 
 
 
if ( valor != 0 ) 
 
 
if ( valor == 0 ) 
 
if (valor < 0 ) 
 
if ( valor <= 0 ) 
 if ( valor > 0 ) 
 
 
 
 
 3a Questão 
 
Na construção de programas na linguagem C, precisamos utilizar 
os operadores relacionais para montar nossas expressões 
relacionais. 
Supondo que as variáveis foram devidamente declaradas, dentre 
as opções apresentadas qual não apresenta uma expressão 
relacional correta na linguagem C. 
 
 
x > ( a + b ) 
 
x <= ( a + b ) 
 x == ( a + b ) 
 x = ( a + b ) 
 
x >= ( a + b ) 
 
 4a Questão 
 
Alguns iniciantes na linguagem C sentem dificuldades de usar a estrutura dos 
ifs encadeados. Sabemos que algumas afirmativas abaixo não produziriam 
um resultado errado, mas que tornaria o programa com menor qualidade, visto 
que testes seriam realizados sem necessidade. 
Então, leia com atenção e só escolha a afirmativa poderá ajudá-los a construir 
programas com qualidade, usando todos os recursos da estrutura if ... else if 
..... 
 
 
 
O número de ifs encadeados é igual ao número de respostas 
possíveis, considerando a resposta errada do usuário e não usaria 
else. 
 Posso substituir ifs encadeados por ifs simples sem prejuízo de 
qualidade. 
 
Posso substituir por vários ifs simples e um if composto, ao final, 
para criticar a resposta errada do usuário. 
 O número de ifs encadeados é igual ao número de respostas 
possíveis, não considerando a resposta errada do usuário, pois 
essa seria criticada no else. 
 
Melhor seria substituir, sempre, os ifs encadeados pela estrutura 
do switch(). 
 
 
 
 
 
 
 
 
 
 5a Questão 
 
Observe o trecho de programa abaixo com muita atenção e escolha a opção 
que mostra o que será exibido. 
 int a = 5, b = 6 , c = 7; 
 if( a > b ) puts(" \nUM\n" ); 
 else if ( ( c - b) % 2 == 0) puts(" \nDOIS\n" ); 
 else if ( (a + b) > c * 2) puts( " \nTRES\n" ); 
 else if( c <= b + a ) puts( " \nQUATRO\n" ); 
 else puts(" \nTodas Erradas\n" ); 
 
 
 
TRÊS 
 QUATRO 
 
DOIS 
 TODAS ERRADAS 
 
UM 
 
 
 
 
 6a Questão 
 
Observe as expressões abaixo que podem fazer parte do comando de teste(if) 
na linguagem C. Essas expressões podem estar corretas ou apresentarem 
erros de sintaxe e/ou lógica. Assinale a opção CORRETA. 
I a > 18 (a é uma variável do tipo int) 
II n1 = n2 
III resp == 'S' && resp== 's' (resp é uma variável do tipo char de um caracter) 
IV x % 2 == 0( x é um variável do tipo float) 
 
 
 
As afirmativas I, III e IV não apresentam erros. 
 A afirmativa III apresenta erro. 
 Só a afirmativa I não apresenta erros. 
 
As afirmativas I e IV não apresentam erros. 
 
 
As afirmativas I e III não apresentam erros. 
 
 
 
 
 7a Questão 
 
Verifique o código a seguir e marque a alternativa que representa o 
que seria exibido na tela se o usuário atribuísse o valor 1 para a 
variável aux: 
int main(){ 
int aux; 
scanf("%d",&aux); 
switch(aux) 
{ 
 case 1 : printf("caso 1"); 
 case 2 : printf("caso 2"); 
 break; 
 case 3 : printf("caso 3"); 
 break; 
 case 4 : printf("caso 4"); 
} 
 
 caso 2 
 
 
caso 1 
 
 caso 1caso 2 
 
 
caso 3 
 
 
caso 2caso 3 
 
 
 8a Questão 
 
Qual é a saída de tela, deste trecho de programa? 
int x=4, 
y=8; 
if (x < 2) 
 printf ("%d \n", x); 
else 
 printf ("%d \n", y); 
 
 
\n4 
 9 
 
\n8 
 8 
 
12 
 
 
 
 
1a Questão 
 
Se a minha média for maior ou igual a 6 estarei aprovado, caso 
contrário, estarei reprovado. Qual dos trechos abaixo escritos em 
C++ representa esta situação? 
 
 if (media != 6) 
{ 
cout << "Aprovado"; 
} 
else 
{ 
cout << "Reprovado"; 
} 
 
if (media <= 6) 
cout << "Aprovado"; 
else 
cout << "Reprovado"; 
 
if (media > 6) 
{ 
cout << "Aprovado"; 
} 
else 
{ 
cout << "Reprovado"; 
} 
 
if (media > 6) 
cout << "Aprovado"; 
else 
cout << "Reprovado"; 
 if (media >= 6) 
cout << "Aprovado"; 
else 
cout << "Reprovado"; 
 
 
 
 
 
 
 2a Questão 
 
Observe o trecho abaixo. Supondo que você digitou 8 na entrada de dados, 
o que será exibido? 
 
int num; 
puts("\nDigite número inteiro\n");scanf("%d", &num); 
if( num = 5 ) 
 printf(" \nMuito interessante\n" ); 
 printf(" \nDificil"); 
 
 
 
 
Dá erro porque só tem um sinal de igual no teste. 
 
Dá erro de sintaxe porque faltam as chaves. 
 .Desce o cursor e só exibe Muito interessante. 
 Desce o cursor e exibe Muito interessante. Desce o cursor e exibe 
Dificil. 
 
Desce o cursor e exibe Dificil. 
 
 
 
 
 3a Questão 
 
Considere o código abaixo. Considere que o usuário digite 3. O que 
será impresso para o usuário? 
int main (void ) 
{ 
 int valor; 
 
 printf ("Digite um valor de 1 a 7: "); 
 scanf("%d", &valor); 
 
 switch ( valor ) 
 { 
 case 1 : 
 printf ("Domingo\n"); 
 break; 
 
 case 2 : 
 printf ("Segunda\n"); 
 break; 
 
 case 3 : 
 printf ("Terca\n"); 
 break; 
 
 case 4 : 
 printf ("Quarta\n"); 
 break; 
 
 case 5 : 
 printf ("Quinta\n"); 
 break; 
 
 case 6 : 
 printf ("Sexta\n"); 
 break; 
 
 case 7 : 
 printf ("Sabado\n"); 
 break; 
 
 default : 
 printf ("Valor invalido!\n"); 
 } 
 
 return 0; 
} 
 
 Quinta 
 
Segunda 
 
Quarta 
 Terca 
 
Valor invalido 
 
 
 
 
 4a Questão 
 
 Uma das dificuldades da estrutura escolha/ caso é o fato das restrições 
variarem para cada linguagem, dificultando a fixação. Na linguagem C, essa 
estrutura recebe o nome de switch() e tem suas restrições. Observe os trechos 
abaixo e assinale o que é possível ser usado na linguagem C, supondo 
que se espera encontrar na variável de nome a, inteira, alguns valores e 
entres eles está o número 90. Analise as linhas abaixo e assinale que foi 
escrita corretamente para testar o número 90 na estrutura switch(). 
 
 90: printf("Pode"); stop; 
 
case a > 90: printf("Pode") ;break; 
 case 90: printf("Pode") ; break; 
 
90: printf("Pode"); 
 
case a=90: printf("Pode") ;break; 
 
 
 
 
 
 
 
 
 5a Questão 
 
Marque abaixo a instrução que permite parar uma execução dentro 
de um switch. 
 
 
case 
 
close 
 
open 
 break 
 stop 
 
 
 
 6a Questão 
 
Suponha que as notas digitadas pelo usuário sejam 
respectivamente (4.5; 8.5; 6.5). 
 
 
int main() 
{ 
float n1, n2, n3, med; 
puts("Digites as notas"); 
scanf("%f", &n1); 
scanf("%f", &n2); 
scanf("%f", &n3); 
med= (n1+n2+n3)/3; 
if(med>=7) 
printf("Aluno aprovado com: %.1f\n", med); 
else 
printf("Aluno reprovado com: %.1f\n", med); 
system("pause"); 
return 0; 
} 
 
Desconsidere a necessidade da declaração das bibliotecas. 
Qual será a mensagem final exibida para o usuário? 
 
 Aluno aprovado com: 6.0 
 Aluno reprovado com: 6.5 
 
Aluno reprovado com: 6.50 
 
Aluno aprovado com: 6.5 
 
Aluno aprovado com: 6.00 
 
 7a Questão 
 
Um desenvolvedor pediu ajuda ao Engenheiro porque o teste que 
ele tinha feito para selecionar funcionários não estava dando certo. 
Ele apresentou as cinco opções abaixo. 
Assinale a única opção que atende à exigência: o candidato ser do 
sexo feminino e ter idade no intervalo fechado em 18 e aberto 
em 30. 
 
 
if( sexo == 'f' or sexo == 'F' and idade >= 18 and idade <= 
30 ) 
 
if( sexo == 'f' || sexo == 'F' && idade >= 18 && idade <= 
30 ) 
 if(( sexo == 'f' || sexo == 'F' ) && idade >= 18 && idade < 
30 ) 
 
if(( sexo == 'f' or sexo == 'F') and idade>=18 and idade < 
30 ) 
 if(( sexo == 'f' || sexo == 'F' ) and idade >= 18 and idade 
< 30 ) 
 
 
 
 8a Questão 
 
O Operador ternário é uma forma elegante de representar if else if, 
visto que é abreviada. Observe o trecho abaixo e assinale a opção 
que descreve o que faz. 
 
int a=12, b=35, c=7, resp; 
resp=(a>b && a > c) ?a: (b>c) ? b/c:c; 
printf (''valor: %d'' , resp); 
 
 
Exibe valor: 0 
 
Exibe valor: 7 
 Exibe valor: 5 
 
Exibe valor: 35 
 Exibe valor: 12 
1a Questão 
 
A estrutura do if na linguagem C, como em toda linguagem, tem uma sintaxe. 
Observe as afirmações abaixo e escolha a opção ERRADA. 
 
I As chaves de abertura e fechamento, sempre, não são obrigatórias. 
II No teste unimos expressões relacionais com operadores lógicos quando 
necessário. 
III A palavra then está presente na estrutura. 
IV O uso do else poderá não ser necessário. 
 
 
 
IV está correta e a I não está correta. 
 I e III estão corretas. 
 
II e IV estão corretas. 
 
II está correta e a III não está correta. 
 
I está errada. 
 
 
 
 
 2a Questão 
 
Um desenvolvedor estava construindo um código que tinha quatro 
possibilidades de resposta válidas além de uma mensagem de erro. 
O dado testado era do tipo inteiro. 
Assinale a opção que ele escolheu. 
 
 
três ifs simples e um composto 
 quatro ifs simples 
 
switch() com cinco cases 
 switch() com quatro cases e um default 
 
quatro ifs simples e um composto 
 
 
 
 
 
 3a Questão 
 
Os operadores lógicos servem para combinar resultados de 
expressões, retornando se o resultado final é verdadeiro ou falso. 
Marque a alternativa que contém o operador lógico que deve ser 
utilizado quando as duas proposições lógicas necessitam ser 
verdadeiras para que o resultado da combinação seja verdadeiro. 
 
 
((pontos>=10) || (pontos <=20)) 
 
((pontos>=10) # (pontos <=20)) 
 
((pontos>=10) % (pontos <=20)) 
 ((pontos>=10) && (pontos <=20)) 
 
((pontos>=10) ! (pontos <=20)) 
 
 
 
 4a Questão 
 
Um aluno de LPI gostaria de testar duas condições, usando somente uma 
estrutura if. 
 
Abaixo as duas condições a serem testadas: 
 
a) O ano de nascimento que precisa estar no intervalo fechado de 1989-
2007. 
b) O sexo que precisa ser masculino. 
 
Sabe-se que o sexo se encontra em uma variável do tipo char de 
nome sexo e o ano em uma variável do tipo int de nome ano. 
 
Além disso, ele deseja que seja aceita tanto a letra M quanto a letra m. 
 
Assinale a opção que resolve o problema desse aluno. 
 
 
if( sexo == 'M' || sexo == 'm' && (ano >= 1989 && ano <= 2007 ) ) 
 if(ano >= 1989 && ano<= 2007 && sexo== 'M' || sexo == 'm' ) 
 
if(sexo == 'M' || sexo == 'm' && ano >= 1989 && ano <= 2007 ) 
 if(ano >=1989 && ano <=2007 && (sexo == 'M' || sexo == 'm' ) ) 
 
if( sexo == 'M' || (sexo == 'm' && ano >=1989 && ano<=2007 ) ) 
 
 
 
 
 5a Questão 
 
A estrutura do if.. else na linguagem C, como em toda linguagem, tem uma 
sintaxe. Observe as afirmações abaixo e escolha a opção Correta sobre as 
afirmativas. 
I As chaves de abertura e fechamento sempre serão obrigatórias. 
II No teste unimos expressões relacionais com operadores lógicos quando 
necessário. 
III A palavra then está presente na estrutura. 
IV O uso do else nem sempre será necessário. 
 
 
Somente a afirmativa I está correta. 
 As afirmativas II e IV estão corretas. 
 
.As afirmativas I e III estão corretas. 
 
As afirmativas II e III estão corretas 
 
Somente a afirmativa IV está correta. 
 
 
 
 
 6a Questão 
 
Seja o código a seguir, caso o usuário insira o valor 3 na variável 
num, qual a mensagem aparecerá na tela? 
#include 
#include 
 
int main () 
{ 
 int num; 
 printf ("Digite um numero: "); 
 scanf ("%d",&num); 
 if(num = 2) 
 printf("O numero eh 2"); 
 else printf("O numero eh diferente de 2"); 
 return(0); 
} 
 
 
Nenhuma mensagem é exibida, pois há um erro no código. 
 O numero eh diferentede 2 
 
O numero eh 3 
 
O numero eh diferente de 3 
 O numero eh 2 
 
 
 
 
 
 
 7a Questão 
 
O desenvolvimento de um programa precisa atender as 
necessidades do usuário final, para isto o desenvolvedor conta com 
algumas estruturas que facilitam a construção de seu código fonte. 
Uma delas é a estrutura condicional if. 
Das opções apresentadas marque a qual melhor define esta 
estrutura. 
 
 Compara os valores de algumas variáveis dependendo do 
resultado permite que o programa possa fazer um caminho 
diferente repetidamente. 
 
Compara os valores de algumas variáveis e dependendo do 
resultado permite que o programa siga por caminhos 
diferentes. 
 Testa uma expressão e dependendo do resultado permite que 
o programa siga por caminhos diferentes. 
 
Testa uma condição e dependendo do resultado permite que o 
programa siga por caminhos diferentes repetidamente. 
 
Compara os valores possíveis para uma variável e 
dependendo do resultado permite que o programa siga por 
caminhos diferentes. 
 
 
 
 
 8a Questão 
 
Marque a opção que apresenta apenas operadores relacionais: 
 
 
> < == && >= 
 !+ != == =+ 
 
> < == >+ >= 
 
> < ++ == >= 
 > < == <= >= 
 
 
 
 3a Questão 
 
Em relação aos operadores relacionais, o resultado de sua 
expressão é sempre igual a: 
 
 Decisão de parada ao comando while e do... while. 
 
Nenhuma das alternativas anteriores. 
 
Uma decisão de fluxo para o comando if. 
 
Resposta && ou ||. 
 0 (falso) ou 1 (verdadeiro) 
 
 
 
 
 4a Questão 
 
Assinale a alternativa que apresenta APENAS os exemplos de 
operadores relacionais. 
 
 =, > e || 
 
+, - e * 
 <, > e >= 
 
&&, || e ~ 
 
&&, >= e || 
 
 
 
 
 
 6a Questão 
 
Observe o trecho abaixo: 
char sexo; int idade; 
puts("\nEntre com sexo(F/ M) e idade: "); 
scanf("%c %d", &sexo, &idade); 
if(toupper(sexo) == 'F' && (idade < 18 || idade > 80)) 
 puts(" \nValor do plano de Saúde com desconto\n"); 
else 
 puts(" \nValor do plano de Saúde sem desconto\n"); 
Se o usuário executar três vezes os valores: f 17 / M 17/ F 81, qual opção 
mostraria as respostas corretas? 
 
 Valor do plano de Saúde com desconto / Valor do plano de Saúde sem 
desconto / Valor do plano de Saúde com desconto 
 
Valor do plano de Saúde sem desconto / Valor do plano de Saúde sem 
desconto / Valor do plano de Saúde sem desconto 
 
Valor do plano de Saúde com desconto / Valor do plano de Saúde com 
desconto / Valor do plano de Saúde com desconto 
 
Valor do plano de Saúde sem desconto / Valor do plano de Saúde sem 
desconto / Valor do plano de Saúde com desconto 
 
Valor do plano de Saúde sem desconto / Valor do plano de Saúde com 
desconto / Valor do plano de Saúde sem desconto 
 
 
 
 
 
 
 
 
 7a Questão 
 
Marque a opcão que apresenta apenas operadores lógicos: 
 
 
&= || != 
 || !+ !! 
 && || ! 
 
> < == 
 
 
> && != 
 
 
 
 
1a Questão 
 
Considerando com entrada os seguinte números 5 e 8. Marque a alternativa que contém a resposta do 
programa na tela para os números digitados. 
int main() { 
int a,b; scanf("%d",&a); scanf("%d",&b); 
while (a < b) { printf("%d",a); a = a + 1; } 
system("pause"); 
return 0; } 
 
 
678 
 67 
 
5678 
 
56 
 567 
 
 
 
 
 
 2a Questão 
 
 
João foi realizar uma prova que tinha uma questão com o trecho abaixo. Assinale a 
opção que esclarece, ou não, o que será exibido 
 int num, c, s = 0; 
 puts("Numero: "); scanf("%d", &num); 
 for(c=1; c < num; c++) 
 if(num % c == 0) s+=c; 
printf("\nO que exibe? %d\n", s); 
 
 
 
 Exibe 0 porque não está testando se tem divisor. 
 Exibe todos os divisores. 
 Exibe A soma de todos os divisores exceto ele mesmo 
 Exibe A soma de todos os divisores. 
 Dá erro na compilação porque a estrutura do for e a estrutura do if estão sem as 
{ } 
 
 
 
 3a Questão 
 
 
int main() { 
 int contador = 1; 
 while (contador < 10) 
 { 
 printf("%d ", contador); 
 contador++; 
} 
return 0; 
} 
 
 
1 2 3 4 5 6 7 8 9 10 11 
 
0 1 2 3 4 5 6 7 8 9 10 
 1 2 3 4 5 6 7 8 9 10 
 
0 1 2 3 4 5 6 7 8 9 10 11 
 1 2 3 4 5 6 7 8 9 
 
 
 
 
 
 4a Questão 
 
 
Sabendo que no programa abaixo foi digitado na sequencia os números 4 e 10. Marque a alternativa que 
contém a saída gerada pelo programa para a entrada fornecida. 
#include 
using namespace std; 
int main() { 
 int a, b; 
 cin >> a >> b; 
 a = a + 1; 
 while ( a < b ) { 
 cout << " " << a; 
 a = a + 1; 
 } 
} 
 
 
4 5 6 7 8 9 10 11 
 
5 6 7 8 9 10 
 4 5 6 7 8 9 
 5 6 7 8 9 
 
5 6 7 8 9 10 11 
 
 
 
 
 
 5a Questão 
 
 
Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa, caso o 
usuário introduza um número positivo maior que zero: 
#include < stdio.h> //Retire o espaço depois de < quando for compilar 
int main() 
{ 
int x, i=1; 
printf("Entre com numero: "); scanf("%d", &x); 
while(i<=x) 
{ 
 if(i%2==0) printf("%d\n", i); 
 i++; 
} 
return 0; 
} 
 
 
O código mostra os todos os números ímpares menores ou igual a x. 
 O código mostra os todos os números pares menores ou igual a x. 
 
O código mostra os números divisíveis por 2. 
 
O código mostra os todos os divisores ímpares de um número. 
 
 
O código mostra os números divisíveis por 3. 
 
 6a Questão 
 
 
Considere o trecho de código abaixo. O que será impresso quando o programa for executado? 
int main() 
{ 
 int contador = 1; //declarando e inicializando a variável de controle 
 
 while (contador < 10) // Testando a condição 
 { 
 printf("%d ", contador); //Executando um comando dentro do laço 
 
 contador++; //atualizando a variável de controle 
 } 
 
 return 0; 
} 
 
 
0 1 2 3 4 5 6 7 8 9 10 11 
 1 2 3 4 5 6 7 8 9 10 11 
 
1 2 3 4 5 6 7 8 9 10 
 1 2 3 4 5 6 7 8 9 
 
0 1 2 3 4 5 6 7 8 9 10 
 
 
 
 
 
 7a Questão 
 
 
João foi realizar uma prova que tinha uma questão com o trecho abaixo e pedia para 
assinalar a opção que explicava a finalidade da estrutura while nele. 
 int num; 
 puts("\nNumero de ... algarismos:"); 
 scanf("%d", &num); 
 while (num < 100 || num > 999) 
 { 
 puts("\nNumero FORA do Intervalo"); 
 puts("\nNumero de ... algarismos:"); 
 scanf("%d", &num); 
 } 
 
 
 Trecho que deixa entrar com vários números enquanto o usuário digitar números 
no intervalo de 100 até 999. 
 Trecho de Proteção para evitar que o usuário digite número menor do que 100 
e maior do que 999. 
 Trecho de Proteção para evitar que o usuário digite número menor do que 100 
ou maior do que 999. 
 Trecho de Proteção para evitar que o usuário digite número no intervalo de 100 
a 999. 
 Nenhuma finalidade tem esse trecho 
 
 8a Questão 
 
 
Quando tomamos conhecimento das três estruturas de repetição, ficamos sem saber, em 
alguns trechos, o que elas fazem. 
Observe o trecho abaixo e assinale a opção que esclarece o que está sendo feito. 
float num; 
for(;;) 
{ 
 puts("\nNumero: "); 
 scanf("%f", &num); 
 if(num <= 0 ) break; 
 printf("\n%.2f", num *3); 
 } 
 
 
 
 Simula a estrutura do ... while, enquanto num for > 0. 
 Simula a estruturawhile, enquanto num for > 0. 
 Simula a estrutura do ... while, enquanto num for <= 0 
 Simula a estrutura while, enquanto num for <= 0 
 Nada porque tem erro na linha do for. 
 
1a Questão 
 
Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num 
seja diferente de 0? 
 
 
for (i = num; i > 0; i++) 
 
for ( i = 0; i == num; i++) 
 while (num == 0) 
 
enquanto (num > 0) 
 while (num != 0) 
 
 
 
 2a Questão 
 
 
Um programa de cadastro deve solicitar cpf,nome e telefone de alunos até que o cpf seja igual a 0. Que 
estrutura em C melhor representa esta tarefa? 
 
 
while{ // [bloco de comandos] } 
do (cfp !=0); 
 
if (cpf != 0) 
{ // [bloco de comandos] } 
 do{ // [bloco de comandos] } 
while (cfp !=0); 
 
for (cpf=0; cpf !=0; cpf++) 
{ // [bloco de comandos] } 
 
do while (cfp !=0) 
{ // [bloco de comandos] } 
 
 
 
 3a Questão 
 
 
Sabendo que no programa abaixo foi digitado na sequencia os seguinte números: 4 e 10. Marque a 
alternativa que contém a resposta do programa aos números digitados. int main(){ int a,b; 
scanf("%d",&a); scanf("%d",&b); a = a + 1; while (a < b){ printf("%d",a); a = a + 1;} system("pause"); 
return 0;} 
 
 5 6 7 8 9 
 
4 5 6 7 8 9 10 
 3 4 5 6 7 8 9 
 
5 6 7 8 9 10 11 
 
3 4 5 6 7 8 9 10 11 
 
 
 
 
 
 4a Questão 
 
 
Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o 
código abaixo e escolha a opção que contém a série exibida pelo código. 
 
 
 1 1 2 3 5 8 13 21 
 1 3 4 7 9 11 13 
 0 1 1 2 3 4 5 6 
 0 1 1 3 2 4 5 7 
 0 1 1 2 3 5 8 13 21 
 
 
 
 
 5a Questão 
 
 
João foi realizar uma prova que tinha uma questão com o trecho abaixo e pedia para 
assinalar a opção que mostrava quantas vezes seria exibida a mensagem Tenho que 
estudar. 
Se fosse você, qual escolheria? 
int y; 
for(y=5; y>=25; y+=5); puts("\nTenho que estudar"); 
 
 
 19 vezes 
 6 vezes 
 Nenhuma vez 
 1 vez 
 5 vezes 
 
 
 
 
 
 6a Questão 
 
 
Leia com atenção as afirmativas abaixo e escolha a opção correta. 
I A estrutura do for, por definição, é ideal quando o número de repetições for 
conhecido 
II A estrutura do for testa ao final enquanto a estrutura while testa no início 
III A estrutura while pode simular a estrutura do for e a estrutura do... while 
IV A estrutura do for sem nenhum parâmetro, só com os ; dentro dos parênteses e 
com um if no corpo da repetição, pode simular a estrutura while 
V Tanto a estrutura do...while quanto a estrutura while, testam no início 
 
 Somente II, III e V estão corretas 
 Somente I e V estão corretas 
 Somente I, II, III e V estão corretas 
 Somente I, III e V estão corretas 
 Somente I, III e IV estão corretas 
 
 
 
 7a Questão 
 
 
Considere o trecho de código abaixo. O que será impresso quando o programa for executado? 
int main() 
{ 
 int contador = 1; //declarando e inicializando a variável de controle 
 
 while (contador <= 10) // Testando a condição 
 { 
 printf("%d ", contador); //Executando um comando dentro do laço 
 
 
 } 
 
 return 0; 
} 
 
 
0 1 2 3 4 5 6 7 8 9 10 
 
1 2 3 4 5 6 7 8 9 
 Nunca vai parar. 1 2 3 4 5 6 7 8 9 10 11 12 13 14... 
 Nunca vai parar. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... 
 
1 2 3 4 5 6 7 8 9 10 
 
 
 
 
 
 8a Questão 
 
 
Um aluno estava fazendo experiências com a estrutura do for e precisava repetir a frase, 
10 vezes: 
Estudar para Prova no final de semana! 
Sendo assim, construiu vários trechos. 
Observe as tentativas que ele fez abaixo e assinale a opção correta. 
I for(x = 2; x <= 20; x++ ) 
II for(x = 3; x <= 30; x = x + 3 ) 
III for(x = 0; x <= 10; x = x + 1 ) 
IV for(x = 2; x <= 11; x++ ) 
 
 As afirmativas II , III e IV permitem a repetição 10 vezes 
 As afirmativas II e IV permitem a repetição 10 vezes 
 Todas, exceto as afirmativas I e a IV, permitem a repetição 10 vezes 
 Somente a afirmativa II permite a repetição 10 vezes 
 As afirmativas II e III permitem a repetição 10 vezes 
1a Questão 
 
 Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o 
código abaixo, supondo que você digitou 2 e 4 quando lhe foram solicitados dois 
números e escolha a opção que contém a série exibida pelo código. 
 
 
 2 4 6 8 19 12 14 16 
 2 4 6 10 16 26 42 
 2 4 6 10 16 26 42 68 
 2 4 4 8 12 20 32 52 
 2 4 4 8 12 20 32 
 
 
 
 
 2a Questão 
 
 
Analise os códigos descritos nas alternativas de 'A' até 'E' e marque qual o código que fornece exatamente a 
saída descrita a seguir: Ano valor na conta 0 1000.00 1 1050.00 2 1102.50 3 1157.63 4 1215.51 5 1276.28 
 
 
b- printf("Ano\t valor na conta\n"); for(i=1;i>5;i++) { vf=vp*pow(1+0.05,i); printf("%d %5.2f 
\n",i,vf); } 
 e- printf("Ano\t valor na conta\n"); for(i=0;i<=5;i++) { vf=vp*pow(1+0.05,i); printf("%d %5.2f 
\n",i,vf); } 
 c- printf("Ano\t valor na conta\n"); for(i=0;i==5;i++) { vf=vp*pow(1+0.05,i); printf("%d \t 
%5.2f \n",i,vf); } 
 
a- printf("Ano\t valor na conta\n"); for(i==1;i<=5;i++) { vf=vp*pow(1+0.05,i); printf("%d \t 
%5.2f \n",i,vf); } 
 
d- printf("Ano\t valor na conta\n"); for(i=0;i<5;i++) { vf=vp*pow(1+0.05,i); printf("%d %5.2f 
\n",i,vf); } 
 
 
Explicação: os valores de i começando em zero e imprimindo seu valor até 5, só é atenda pela opção "e". 
 
 
 
 
 
 3a Questão 
 
 
Na maioria das linguagens de programação, as estruturas de controle de fluxo são fundamentais para a 
criação de programas elegantes e de fácil entendimento. Assinale a alternativa correta com relação aos 
comandos de controle de fluxo da linguagem C, sabendo que o comando for apresenta a seguinte forma 
geral: for (inicialização;condição;incremento) declaração; 
 
 
Não é permitido omitir a condição no comando for, pois não existiria maneira de parar o laço 
infinito. 
 Pode-se omitir a declaração, e, mesmo assim, o comando for ainda será válido. 
 O comando continue usado dentro de um laço executa a próxima linha de código 
independentemente do fato de ela estar dentro ou fora do laço. 
 
Sem os comandos de controle de fluxo, só haveria uma maneira de o programa ser executado: de 
baixo para cima e comando por comando. 
 
O comando for garante que o laço seja executado pelo menos uma vez. 
 
 
 
 
 
 4a Questão 
 
 
Um programa que contém a linha de comando abaixo: 
int soma, i = 0; 
while ( i < 50000) { 
 if ( i % 7 == 0) { 
soma = soma + i; 
 } 
 i++ ; 
 
Qual será a saída: 
 
 
Soma dos números inteiros menores que 50000 divido por 7. 
 Soma dos números inteiros menores que 50000 com resto 7. 
 
Soma dos números inteiros menores que 50000 ímpares. 
 
Soma dos números inteiros menores que 50000. 
 Soma dos números inteiros menores que 50000 divisíveis por 7. 
 
 
 
 
 
 5a Questão 
 
 
Qual será a saída do programa abaixo? 
int main() { 
int i=0; 
do { 
i++; 
cout << i << endl; 
} while (i < 2); 
} 
 
 0 
1 
2 
 1 
22 
 
1 2 
 
0 
1 
 
 
 
 
 
 6a Questão 
 
 
Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa: 
#include < stdio.h> //Retire o espaço depois de < quando for compilar 
int main() 
{ 
 int x, i; 
 printf("Entre com numero: "); scanf("%d", &x); 
 for(i=1; i<1 + x/2; i++) 
 { 
 if(x%i==0 && i%2!=0) printf("Divisores: %d\n", i); 
 } 
 if(x%2!=0)printf( "Divisores: %d\n", x); 
 return 0; 
} 
 
 O código mostra os todos os divisores de um número. 
 O código mostra os todos os divisores ímpares de um número. 
 
O código mostra os todos os divisores pares de um número. 
 
O código mostra os números divisíveis por 2. 
 
O código mostra os números divisíveis por 3. 
 
 
 
 7a Questão 
 
 
Considere o trecho de código em C a seguir e selecione a opção que indica corretamente o que será exibido 
ao término da execução. 
int x=1; 
int y=5; 
for (int i = y; i >0 ;i--) 
x = x * i; 
printf("x=%d",x); 
 
 
 
x = x 
 
x= 5 
 120 
 x = 120 
 
5 
 
 
 
 
 
 8a Questão 
 
 
Assinale a alternativa correta em relação a quantidade de vezes que a palavra PROGRAMAÇÃO será 
impressa, após a execução do trecho de código abaixo. 
i = 1; 
while ( i < 20 ) { 
 if ( i % 2 == 0 ) { 
 cout << "\n PROGRAMAÇÃO"; 
 } 
 i++; 
} 
 
 
Nenhuma vez 
 9 vezes 
 10 vezes 
 
19 vezes 
 
20 vezes 
 
 
 
 
 2a Questão 
 
 
Analise o trecho de código abaixo e determine qual a saída gerada: 
int i, A = 0, B = 1 ; 
for (i = 1; i < 5; i++) { 
 A = B; 
 B = i + B * A; 
} 
cout << " A = " << A << " B = " << B; 
 
 
A = 8 B = 67 
 
A = 6 B = 39 
 A = 39 B = 1525 
 A = 67 b = 4757 
 
A = 0 B = 1 
 
 
 
 
 
 3a Questão 
 
 
Considere o trecho de código abaixo. O que será impresso quando o programa for executado? 
int main() 
{ 
 int contador = 10; 
 
 while (contador > 1) 
 { 
 printf("%d ", contador); 
 
 contador--; 
 
 } 
 
 return 0; 
} 
 
 
1 2 3 4 5 6 7 8 9 
 
Nunca vai parar. 1 1 1 1 1 1 1 1 1 1 1 1 ... 
 10 9 8 7 6 5 4 3 2 1 
 10 9 8 7 6 5 4 3 2 
 
Nunca vai parar. 10 10 10 10 10 10 10 10... 
 
 
Explicação: 
A estrutura while repete o bloco enquanto o teste for verdadeiro. 
Se a variável contador começa com 10 e exibe o valor do contador enquanto ele for maior 
do que, significa que quando ele for decrementado e chegar a 1, interromperá a repetição; 
Resposta correta: 10 9 8 7 6 5 4 3 2 
 
 
 
 
 
 4a Questão 
 
 
Qual será a saída do programa abaixo? 
 int main () { 
int soma = 0; 
int i = 0; 
while (i <= 700) { 
 if (i % 7 == 0) { 
 soma = soma +i; } 
 i ++; } 
cout << soma << endl; 
} 
 
 
Soma dos números até 700 com resto 7. 
 Soma dos números de 7 a 700. 
 
Soma dos números inteiros até 700. 
 Soma dos números divisíveis por 7 até 700. 
 
Soma dos números ímpares até 700. 
 
 
 
 
 
 5a Questão 
 
 
Dado o programa abaixo, informe o que vai ser impresso 
após execução. 
 
 
 
 21 
 34 
 55 
 
 89 
 
 13 
 
 
 
 
 
 6a Questão 
 
 
Complete o trecho de código abaixo com a expressão condicional adequada para o comando 
de repetição exibir a mensagem "Boa Noite" 100 vezes. 
i = 0; 
while ( ) { 
cout << "Boa Noite" << endl; 
i = i + 1; 
} 
 
 
i != 100 
 
i == 100 
 i >= 100 
 
i <= 100 
 i < 100 
 
 
 
 
 
 7a Questão 
 
 
Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa: 
#include < stdio.h>//Retire o espaço depois de < quando for compilar 
int main() 
{ 
 int x, i; 
 printf("Entre com numero: "); scanf("%d", &x); 
 for(i=1; i<1 + x/2; i++) 
 { 
 if(x%i==0) printf("Divisores: %d\n", i); 
 } 
 printf( "Divisores: %d\n", x); 
 return 0; 
} 
 
 O código mostra os todos os divisores de um número. 
 O código mostra os números divisíveis por 2. 
 
 
O código mostra os todos divisores pares de um número. 
 
O código mostra os números divisíveis por 3. 
 
O código mostra os todos divisores ímpares de um número. 
 
 
 
Explicação: 
O aluno deve compreender que estão sendo testados como divisor todos os números menores que a 
metade do número introduzido pelo usuário, e caso o número testado tenha divisão exata esse será 
mostrado. 
Assim como o próprio número, já que todo número é divisível por ele mesmo. 
 
 
 
 
 
 8a Questão 
 
 
João foi realizar uma prova que tinha uma questão com o trecho abaixo e pedia para 
assinalar a opção que mostrava quantas vezes seria exibida a mensagem BOM. 
Se fosse você, qual escolheria? 
int y; 
for(y=2; y <= 16; y+= 2) puts( "BOM" ); 
 
 
 9 vezes 
 8 vezes 
 10 vezes 
 16 vezes 
 15 vezes 
 
 
Explicação: 
O aluno precisa ter entendido que a estrutura do for usa uma PA ou PG 
1a Questão 
 
Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa: 
#include < stdio.h> //Retire o espaço depois de < quando for compilar 
int main() 
{ 
 int x, i; 
 printf("Entre com numero: "); scanf("%d", &x); 
 for(i=1; i<1 + x/2; i++) 
 { 
 if(x%i==0 && i%2==0) printf("Divisores: %d\n", i); 
 } 
 if(x%2==0)printf( "Divisores: %d\n", x); 
 return 0; 
} 
 
 
O código mostra os todos os divisores ímpares de um número. 
 
 
O código mostra os números divisíveis por 3. 
 O código mostra os todos os divisores de um número. 
 
O código mostra os números divisíveis por 2. 
 O código mostra os todos os divisores pares de um número. 
 
 
Explicação: 
O aluno deve compreender que estão sendo testados como divisor todos os números menores que a 
metade do número introduzido pelo usuário, e caso o número testado tenha divisão exata e seja par será 
mostrado. 
Assim como o próprio número quando este for par, já que todo número é divisível por ele mesmo. 
 
 
 
 
 
 4a Questão 
 
 
Qual será a saída do programa abaixo? 
 int main () { 
int soma = 0; 
int i = 0; 
while (i <= 700) { 
 if (i % 7 == 0) { 
 soma = soma +i; } 
 i ++; } 
cout << soma << endl; 
} 
 
 
Soma dos números até 700 com resto 7. 
 Soma dos números de 7 a 700. 
 
Soma dos números inteiros até 700. 
 Soma dos números divisíveis por 7 até 700. 
 
Soma dos números ímpares até 700. 
 
 
 
 
 
 5a Questão 
 
 
Dado o programa abaixo, informe o que vai ser impresso 
após execução. 
 
 
 
 21 
 34 
 55 
 
 89 
 
 13 
 
 
 
 
 
 6a Questão 
 
 
Complete o trecho de código abaixo com a expressão condicional adequada para o comando 
de repetição exibir a mensagem "Boa Noite" 100 vezes. 
i = 0; 
while ( ) { 
cout << "Boa Noite" << endl; 
i = i + 1; 
} 
 
 
i != 100 
 
i == 100 
 i >= 100 
 
i <= 100 
 i < 100 
 
 
 
 
 
 7a Questão 
 
 
Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa: 
#include < stdio.h>//Retire o espaço depois de < quando for compilar 
int main() 
{ 
 int x, i; 
 printf("Entre com numero: "); scanf("%d", &x); 
 for(i=1; i<1 + x/2; i++) 
 { 
 if(x%i==0) printf("Divisores: %d\n", i); 
 } 
 printf( "Divisores: %d\n", x); 
 return0; 
} 
 
 O código mostra os todos os divisores de um número. 
 O código mostra os números divisíveis por 2. 
 
 
O código mostra os todos divisores pares de um número. 
 
O código mostra os números divisíveis por 3. 
 
O código mostra os todos divisores ímpares de um número. 
 
 
 
Explicação: 
O aluno deve compreender que estão sendo testados como divisor todos os números menores que a 
metade do número introduzido pelo usuário, e caso o número testado tenha divisão exata esse será 
mostrado. 
Assim como o próprio número, já que todo número é divisível por ele mesmo. 
 
 
 
 
 
 8a Questão 
 
 
João foi realizar uma prova que tinha uma questão com o trecho abaixo e pedia para 
assinalar a opção que mostrava quantas vezes seria exibida a mensagem BOM. 
Se fosse você, qual escolheria? 
int y; 
for(y=2; y <= 16; y+= 2) puts( "BOM" ); 
 
 
 9 vezes 
 8 vezes 
 10 vezes 
 16 vezes 
 15 vezes 
 
 
Explicação: 
O aluno precisa ter entendido que a estrutura do for usa uma PA ou PG 
1a Questão 
 
Qual a estrutura de repetição usada para quantidade indeterminada de repetições? 
 
 while 
 if-else 
 
for 
 
struct 
 
switch 
 
 
Explicação: 
A linguagem C tem três estruturas de repetição: for, while e do...while. 
Tem em vista o exposto acima, eliminamos: if-else, switch e struct. 
Sendo assim, sobram for e while. 
Estudamos que todas podem simular todas, mas não significa que seja a melhor 
solução. 
A estrutura do for em sua sintaxe básica necessita, quando for executada, que o 
número de repetições seja conhecido enquanto que as duas outras deverão ser 
escolhidas quando o número de repetições não for conhecido. 
A resposta correta é while. 
 
 
Gabarito Coment. 
 
 
 
 
 2a Questão 
 
 
Considerando com entrada os seguinte números 5 e 10. Marque a alternativa que contém a resposta do 
programa na tela para os números digitados. 
int main() { 
int a,b; scanf("%d",&a); scanf("%d",&b); 
while (a < b) { printf("%d",a); a = a + 2; } 
system("pause"); 
return 0; } 
 
 
Nenhuma das outras alternativas 
 56789 
 
57911 
 579 
 
57 
 
 
 
Explicação: 
O aluno deve compreender que estão sendo testados os números menores que o número introduzido pelo 
usuário, e caso o número testado tenha seja ímpar será mostrado. 
Assim como o próprio número quando este for ímpar. 
 
 
 
 
 
 4a Questão 
 
 
A programação oferece diversas estruturas de forma a facilitar a programação quanto a sua organização. 
Alguns dessas estruturas evitam que determinada parte do código tenha de ser repetido diversas vezes. 
Marque a alternativa que contenha todas essas estruturas. 
 
 
IF e SWITCH CASE 
 
IF/ELSE e FOR 
 FOR, WHILE e DO WHILE 
 
WHILE, DO WHILE e SWITCH CASE 
 
SWITCH CASE e IF/ELSE 
 
 
 
 
 
 5a Questão 
 
 
1. Sabendo-se que um usuário entrou com o primeiro número (num1) igual a 10 e o segundo 
(num2) número igual a 20, analise o trecho do código apresentado na figura 1 e marque a 
resposta que confere exatamente com a saída esperada pelo código. 
 
Figura 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 6a Questão 
 
 
Todo laço de repetição dever possuir um critério de parada para que o mesmo não fique executando 
indefinidamente. 
Analise o código a seguir e marque a opção que representa um critério de parada a ser introduzido no 
código, no bloco while, a fim que o código em execução 
mostre todos os números pares diferente de zero e inferiores ao valor introduzido pelo usuário a variável x. 
#include < stdio.h> //Retire o espaço depois de < quando for compilar 
int main() 
{ 
int x, i=1; 
printf("Entre com numero: "); scanf("%d", &x); 
while(i<=x) 
{ 
 if(i%2==0) printf("%d\n", i); 
} 
return 0; 
} 
 
 
x++; 
 
i--; 
 i+x; 
 
 
x--; 
 i++; 
 
 7a Questão 
 
 
O programa abaixo terá qual saída? 
int main() { 
int j = 2; 
for ( int i = 1 ; i < = 3 ; i++ ) { 
 cout << i * j << endl; } 
} 
 
 
1 * 2 
2 * 2 
2 * 3 
 12 
 
1 * 2 = 2 
2 * 2 = 4 
3 * 2 = 6 
 2 
4 
6 
 
2, 4, 6 
 
 
 
 
 
 8a Questão 
 
 
Os loops são utilizados para executar um conjunto de instruções várias vezes baseando-se sempre em uma 
condição que decidirá se continua repetindo ou não. 
Qual estrutura de repetição abaixo, garante que o bloco de instruções seja executado no mínimo uma vez? 
 
 
while 
 
for 
 repeat...util 
 do...while 
 
switch 
 
 
 
 
1a Questão 
 
 
Qual o elemento do vetor referenciado por vet[vet[5]]? 
 
 
3 
 4 
 
2 
 
9 
 
1 
 
 
 
 
 
 2a Questão 
 
 
A linguagem C permite a inicialização de vetores junto com sua declaração. 
Dada as alternativas abaixo, selecione a que está incorreta: 
 
 
char valores[] = {'A', 'B', 'C', 'D'}; 
 
int valores[] = {10, 15, 20, 25, 30}; 
 char valores[5] = {'A', 'B', 'C', 'D'}; 
 char valores = "ABCD"; 
 
int valores[5] = {10, 15, 20, 25, 30}; 
 
 
 
 
 3a Questão 
 
 
Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem como utilizar, declarar e 
utilizar. 
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa 
decimal e que é necessário criar um vetor que armazene até 150 notas, qual 
alternativa declara de forma correta este vetor para atender a necessidade citada. 
 
 float notas[150]; 
 float %.1f notas[150]; 
 
real notas[150]; 
 
int notas[150]; 
 
integer notas[150]; 
 
 
 
 
 4a Questão 
 
 
Um aluno estava estudando matrizes e se deparou com um pequeno problema: toda vez 
que ele pedia para exibir o conteúdo de uma variável de uma matriz unidimensional, o 
resultado que aparecia era outro. 
 
Sabe-se que ele dimensionou uma matriz de nome numerosI para armazenar 100 números 
inteiros e que ele construiu um trecho que exibia, numerado de 1 até 100, os números 
digitados. 
 
Observe o trecho do programa abaixo e assinale a opção onde estão presentes 
a declaração da matriz e a chamada correta do número escolhido pelo usuário. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 5a Questão 
 
 
 
 
Qual o elemento do vetor referenciado por vet[3]? 
 
 
 
2 
 0 
 7 
 
1 
 
4 
 
Na programação estruturada quando implementamos de modo sequencial ocorre um problema com relação 
ao armazenamento destas variáveis que é a perca de dados armazenados. Para solucionar este problema 
uma estrutura de dados adequada para isto é: 
 
 
Utilizar funções 
 Utilizar vetores 
 Utilizar funções matemáticas 
 
Utilizar estrutura de decisão 
 
Utilizar o comando enquanto 
 
 
 
 
 
 7a Questão 
 
 
Um aluno estava estudando a Aula 6 quando se deparou com o trecho abaixo onde dizia 
que declarava e inicializava o vetor de nome matriculas e do tipo int. 
int x, matriculas[4]={123,138, 13, 97 }; 
Ele gostaria de construir um trecho para exibir os dados do vetor na mesma linha. 
Qual dos trechos abaixo ele usou? 
 
 for(x = 1; x <= 4; x++ ) 
 printf("%d\n",matriculas[x]); 
 for(x=1; x < 4; x++ ) 
 printf("%d\t",matriculas[x]); 
 for(x = 0; x <= 4; x++ ) 
 printf("%d\n",matriculas[x]); 
 for(x = 0; x < 4; x++ ) 
 printf("%d\t",matriculas[x]); 
 for(x = 0; x < 4; x++ ) 
 printf("%d\n",matriculas[x]); 
 
 8a Questão 
 
 
Analise o código a seguir e marque a alternativa

Continue navegando

Outros materiais