Buscar

linguagem de programaçao 1

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

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: 
 
 
Complexidade e Estruturada 
 
 
Rapidez e Portabilidade 
 
 
Estruturada e Rapidez 
 
 
Portabilidade e Modularidade 
 
 
Portabilidade e Estruturada 
 
 
 
Explicação: 
Estudamos várias vantagens da Linguagem C. 
Portabilidade significa que, com pequenas modificações, migramos para outros SO. 
Sabemos que ela tem um conjunto pequeno de palavras reservadas logo, não é 
complexa. 
Por ter três procedimentos básicos, ela é estruturada. 
Por fim, ela gera um executável rápido 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
2. 
 
 
Na função main() da linguagem C, declarações, comandos, estruturas e tudo mais que pertence ao corpo 
da função estão envoltos por dois elementos. 
Assinale a opção que apresenta esses elementos. 
 
 
[ e ] 
 
 
{ e } 
 
 
begin e end; 
 
 
begin e end 
 
 
( e ) 
 
 
 
Explicação: 
As { } foram escolhidas para envolver todos comandos e/ou funções da função 
main() e também de algumas estruturas. 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('616753','6855','2','3626932','2');
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
3. 
 
 
Qual o nome da diretiva que é usada para incluir arquivos dentro do programa fonte que estivermos 
construindo? 
 
 
typedef 
 
 
struct 
 
 
const 
 
 
define 
 
 
include 
 
 
 
Explicação: 
Estudamos que precisaremos incluir bibliotecas em nossos programas e, para que isso 
seja possível, a diretiva include deverá ser usada para cada inclusão. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
4. 
 
 
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 
 
 
Portabilidade 
 
 
Modularidade 
 
 
Rapidez 
 
 
Estruturada 
 
 
 
Explicação: 
Resposta na Aula 1 quando estudamos as sete vantagens 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('616764','6855','3','3626932','3');
javascript:duvidas('2948846','6855','4','3626932','4');
 
 
 
 
 
 
5. 
 
 
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++. 
 
 
 
Apenas | 
 
 
| e || 
 
 
|| e ||| 
 
 
| e ||| 
 
 
Apenas ||| 
 
 
 
Explicação: 
A únicaa alternativa errada é a que considera um longo período de aprendizado, já que estas são 
linguagens que possuem uma sintaxe fácil e conjunto de comandos limitados. 
 
 
 
 
 
 
 
 
6. 
 
 
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 
 
 
 
As afirmativas III e IV estão erradas 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('134161','6855','5','3626932','5');
 
 
As afirmativas I e III estão erradas 
 
 
Somente a afirmativa IV está correta 
 
 
As afirmativas II e III estão corretas 
 
 
Somente a afirmativa II está correta 
 
 
 
Explicação: 
Tudo está na Aula 1 
 
 
 
 
 
 
 
7. 
 
 
Com relação a diretiva de pré compilação #define, pode-se dizer que: 
 
 
 
 É usada parra definições de funções (incluindo a função main()) 
 
 
 
 É usada para parar a execução de um programa 
 
 
 É 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) 
 
 
 
Explicação: 
Na linguagem C só existe duas formas de se definir uma constante: 
Utilizando a diretiva de pré compilação #define ou utilizando o modificador "const" na declaração de uma 
variável. 
Ex: #define PI 3.14 
 const float PI = 3.14; 
 
 
 
 
 
 
 
8. 
 
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; 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2948167','6855','7','3626932','7');
javascript:duvidas('268584','6855','8','3626932','8');
 
- 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 
 
 
C tradicional 
 
 
Padrão C95 
 
 
Padrão C89 
 
 
Padrão C99 
 
 
 
Explicação: 
Em 1999, alguns ajustes forma feitos e surgiu o padrão C99 que incluiu os itens 
abaixo. 
 
 
 
 
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 =\0000123\ 
 
 
RESULTADO =\\0000123\\ 
 
 
RESULTADO = 0000000123 
 
 
RESULTADO =\\0000000123\\ 
 
 
 
Explicação: 
O trecho está baseado no conteúdo da AULA 2, pois saberia que para exibir um \ 
teria que incluir dois \ 
 
 
 
 
 
 
 
2. 
 
Temos linhas e colunas na tela. A um conjunto de 8 colunas, chamamos de zona. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2953452','6855','2','3626932','2');
 
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\tGABARITAR\n"); 
 
 
printf("\t\tVOU\n\tGABARITAR\n"); 
 
 
printf("\t\t\tVOU\n\tGABARITAR\n"); 
 
 
printf("\t\tVOU\n\n\n\tGABARITAR\n"); 
 
 
 
Explicação: 
Assunto bem explorado na Aula 2. 
 
 
 
 
 
 
 
3. 
 
 
Quais as funções da biblioteca stdio.h, da linguagem C usadas para exibir mensagens na tela? 
 
 
 
msg("string") e puts("string") 
 
 
printf("string") e puts("string") 
 
 
putchar("string") e printf("string") 
 
 
putchar("string") e puts("string") 
 
 
 
printf("string") e msg("string") 
 
 
 
Explicação: 
msg não é uma função da stdio.h, putchar() exibe apenas um caracter, portanto as únicas funções que 
sãocapazes de exibir uma mensagem e pertencem a stdio.h são a puts() e a printf() 
 
 
 
 
 
 
 
4. 
 
 
Qual biblioteca da linguagem C contém as funções para exibir mensagens na tela? 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2950004','6855','3','3626932','3');
javascript:duvidas('2950000','6855','4','3626932','4');
 
 
tela.h 
 
 
Cio.h 
 
 
stdstring.h 
 
 
 
stdio.h 
 
 
math.h 
 
 
 
Explicação: 
A biblioteca do C que possui funções para maniulação de entrada e saída de dados é a stdio.h 
 
 
 
 
 
 
 
 
5. 
 
 
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 
 
 
toupper() e stdlib.h 
 
 
tolower() e ctype.h 
 
 
isalpha() e stdlib.h 
 
 
atoi() e math.h 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
6. 
 
 
Um aluno precisava fazer uma citação e deveria colocar uma frase entre aspas. 
Escolha a opção que poderá resolver o problema dele. 
 
 
 
A solução seria usar aspas simples duas vezes para substituir printf("''LPI''"); . 
 
 
printf("\"LPI\"); 
 
 
printf(\"LPI\"); 
 
 
printf("\"LPI\""); 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('616987','6855','5','3626932','5');
javascript:duvidas('2953446','6855','6','3626932','6');
 
 
Como as aspas são usadas para delimitar a cadeia, não se pode fazer isso. 
 
 
 
 
Explicação: 
Esse assunto foi bem explorado na AULA 2. 
 
 
 
 
 
 
 
7. 
 
 
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) 
 
 
126 
 
 
98 
 
 
18 
 
 
36 
 
 
216 
 
 
 
 
 
 
 
8. 
 
 
Se executarmos o comando printf(ceil(3.2));.O que será exibido na tela? 
 
 
 
0.2 
 
 
 
4.2 
 
 
 
4 
 
 
 
3.2 
 
 
 
3 
 
 
 
Explicação: 
Será exibido na tela o número 4, pois a função ceil() arredonda um número real para o inteiro superior 
mais próximo. 
 
 
A linguagem C/C++ utiliza variáveis, que podem ser classificadas como globais ou 
locais. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('863635','6855','7','3626932','7');
javascript:duvidas('2950013','6855','8','3626932','8');
 
Dentre as opções, assinale a que expressa corretamente à definição de "variável 
global" da linguagem C/C++. 
 
 
 
Mantêm seu valor em todo o programa e suas variáveis são escritas fora 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 dentro do main(). 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. 
 
 
São declaradas no final de um bloco. Seus escopos não estão restritos aos blocos em que essas 
variáveis foram declaradas. 
 
 
 
Explicação: 
Uma variável global deve ser declarada fora de qualquer bloco de programa e pode ser visualizada em 
qualquer escopo do programa. 
 
 
 
 
 
 
 
2. 
 
 
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 ",num1 + (float)num2/num3); 
 
 
printf("\nResultado: %.2f ",(float)(num1 + num2/num3)); 
 
 
printf("\nResultado: %.2f ",(float)num1 + num2/num3); 
 
 
printf("\nResultado: %.2d",num1*1.0 + num2/num3); 
 
 
printf("\nResultado: %d ",num1 + num2/num3); 
 
 
 
Explicação: 
O aluno precisa conhecer todos os especificadores de formato e o que significa 
casting(conversão de tipo) e que inteiro dividido por inteiro, inteiro será o quociente. 
 
 
 
 
 
 
 
3. 
 
 
Observe abaixo várias funções que recebem dados via teclado. Qual delas permite uma leitura 
formatada? 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2948340','6855','2','3626932','2');
javascript:duvidas('616859','6855','3','3626932','3');
 
 
fgetc() 
 
 
fgets() 
 
 
scanf() 
 
 
getchar() 
 
 
gets() 
 
 
 
 
 
 
 
4. 
 
 
Qual tipo de variável deve ser usado para armazenar um valor lógico (true/false) em C++? 
 
 
 
boolean 
 
 
char 
 
 
int 
 
 
float 
 
 
short 
 
 
 
Explicação: 
O tipo boolean é utilizado para sinalizar apenas um entre dois estados, falso ou verdadeiro 
 
 
 
 
 
 
 
5. 
 
 
Dado o trecho de lógica utilizando o conceito da linguagem de programação C. Diga o resultado das 
variáveis x, y e z depois da seguinte sequência de operações: 
int x,y,z; 
x=y=10; 
z=++x; 
x=-x; 
y++; 
x=x+y-(z--); 
 
 
x = -13 
y = 11 
z = 13 
 
 
x = -11 
y = 11 
z = 10 
 
 
x = 11 
y = 11 
z = 15 
 
 
x = -20 
y = 20 
z = 10 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('177550','6855','4','3626932','4');
javascript:duvidas('93831','6855','5','3626932','5');
 
 
x = -01 
y = 01 
z = 10 
 
 
 
Explicação: 
int x,y,z; 
x=y=10; 
z=++x; 
x=-x; 
y++; 
x=x+y-(z--); 
 
Nesta questão são declaradas 3 variáveis do tipo inteiro (x,y e z). 
Atribui-se o valor 10 para as variáveis x e y. 
Em seguida incrementa-se o valor de x, passando este a valer 11 e atribui-se este valor 
a variável z. 
 O comando seguinte é x=-x, atribui-se a variável x o seu valor negativo, isto é -11. 
Em seguida incrementa-se o valor em y que passa a valer 11. 
Então é realizada a expressão : x=x+y-(z--), Assim x= -11+11-11, ou seja x recebe -11. 
E por fim decrementa-se o valor de z, que passa valer 10. 
Pois embora a variável esteja entre parênteses usa-se o valor dela e só depois o 
decremento é realizado, pois o operador de decremento está pós-fixado. 
Logo os valores finais das variáveis são: 
x=-11, y=11 e z=10 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
6. 
 
 
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, float, double, void 
 
 
char, int, real, double, void 
 
 
char, int, real, double, boolean 
 
 
char, integer, float, real, boolean 
 
 
char, int, float, double, boolean 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('620403','6855','6','3626932','6');
javascript:duvidas('1025804','6855','7','3626932','7');
7. 
 
 
É um nome de variável válido: 
 
 
 
meu 2Cel 
 
 
maça 
 
 
1X 
 
 
número 
 
 
media_nota2 
 
 
 
Explicação: 
As regras para se nomear uma variável na linguagem C são: 
• Somente letras sem acentuação e nem cedilha, maiúsculas e minúsculas. 
• Algarismos 
• O caractere underline ( _ ) 
• Não pode começar com algarismo 
A única que atende às exigências é: media_nota2 
 
 
 
 
 
 
 
8. 
 
 
Na linguagem de programação C, como em outras, na criação de programas, precisamos fazera entrada 
e saída de dados no sistema e para tal temos algumas opções. 
Das opções apresentadas, qual não é parte linguagem C, conforme o material apresentado nas aulas. 
 
 
fgetc(stdin) 
 
 
getchar ( ) 
 
 
scanf ( ) 
 
 
printf ( ) 
 
 
cin ( ) 
 
 
 
Explicação: 
fgetc(stdin) / printf ( ) / scanf ( ) / getchar ( ) São funções da linguagem C, mas 
cin(), Não é. 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('620456','6855','8','3626932','8');
 
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); 
 
 
9 
 
 
\n4 
 
 
8 
 
 
\n8 
 
 
12 
 
 
 
Explicação: 
Neste trecho de código são declaradas duas variáveis do tipo inteiro, x e y. 
A variável x recebe o valor 4 e y recebe o valor 8. 
O comando if testa a condição x<2. 
Caso a condição seja verdadeira, a linha de comando que será executada é: printf ("%d 
\n", x); que exibe na tela o valor armazenado em x. 
Caso a condição testada seja falsa, a linha de comando que será executada é: printf 
("%d \n", y); que exibe o valor armazenado em y. Neste caso, como o valor de x é 4 a 
condição x<2 é falsa assim será exibido o valor de y, isto é 8. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
2. 
 
 
Na estrutura de decisão o teste é uma expressão relacional que compara os valores dos seus operandos. 
A expressão relacional é formada, por um operador relacional e dois operandos. Podemos afirmar que: 
 
 
A Unidade Aritmética e Lógica testa essa expressão e retorna uma mensagem pra que o 
programdor saiba qual será o desvio do fluxo. 
 
 
A Unidade Aritmética e Lógica testa essa expressão e retorna 1 (ou qualquer número diferente 
de zero) quando a expressão é verdadeira. 
 
 
A Unidade Aritmética e Lógica testa essa expressão e retorna a soma lógica dos valores dos 
operandos. 
 
 
A Unidade Aritmética e Lógica testa essa expressão e retorna o valor lógico do menor operando. 
 
 
A Unidade Aritmética e Lógica testa essa expressão e retorna o valor lógico do maior operando. 
 
 
 
 
Explicação: 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2950109','6855','2','3626932','2');
A Unidade Aritmética e Lógica testa essa expressão e retorna 1 (ou qualquer número diferente de zero) 
quando a expressão é verdadeira. E retorna zero quando a expressão é falsa. 
 
 
 
 
 
 
 
3. 
 
 
No contexto do comando switch e do uso do comando break emm seu interior, na linguagem de 
programação C é correto afirmar que: 
 
 
toda cláusula case de um comando switch, incluindo a cláusula case default, deve conter um 
comando break; 
 
 
quando um comando break é executado, o comando switch é encerrado e o fluxo de controle 
passa para o próximo comando após o fim do comando switch 
 
 
a expressão usada numa cláusula case de um comando switch pode ser de qualquer tipo e deve 
conter pelo menos uma variável; 
 
 
não é possível executar comandos de uma das cláusulas case de um comando switch na mesma 
execução desse comando. 
 
 
os comandos na cláusula case default de um comando switch são executados apenas se 
nenhuma das cláusulas case anteriores possuir um comando break; 
 
 
 
 
 
 
 
4. 
 
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; 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('871221','6855','3','3626932','3');
javascript:duvidas('1025826','6855','4','3626932','4');
 
 default : 
 printf ("Valor invalido!\n"); 
 } 
 
 return 0; 
} 
 
 
Terca 
 
 
Quinta 
 
 
Segunda 
 
 
Quarta 
 
 
Valor invalido 
 
 
 
 
 
 
 
5. 
 
 
Uma empresa que presta serviços de pintura predial, desenvolveu um aplicativo destinado a calcular o 
número de latas necessárias para pintar uma parede. O programa lê o tipo de pintura(interna ou 
externa), a largura e a altura em metros(inteiros) da parede. Para calcular a quantidade de tinta e o 
número de latas, sabe-se que são necessários 3 litros de tinta para pintar cada metro quadrado interno 
ou 4 litros para cada metro quadrado externo. Sabe-se também que cada lata tem 2 litros de tinta. 
Dado o trecho de programa abaixo, identifique a opção correta que complemente o programa para 
realizar o cálculo do número de latas de tinta: 
 
 
void main(){ 
float altura, largura; 
char tipo; int total_latas, tot_metros, aux; 
puts("\nDigite E para Externo e I para Interno"); 
tipo = getchar(); 
puts("\nDigite a altura da parede: "); 
scanf("%f",&altura); 
printf("\nDigite a largura da parede: "); 
scanf("%f",&largura); 
tot_metros = altura*largura; 
 
 
if(tot_metros%2) 
aux = 1; 
else 
aux = 0; 
switch(tipo){ 
case 'I': 
case 'i': 
printf("%d",(tot_metros*3)/2+aux); 
case 'E': 
case 'e': 
printf("%d",(tot_metros*4)/2+aux); 
default: 
printf("%s","Tipo invalido"); 
} 
system("PAUSE"); 
} 
 
 
if(tot_metros%2) 
aux = 1; 
else 
aux = 0; 
switch(tipo){ 
case 'I': break; 
case 'i': break; 
printf("%d",(tot_metros*3)/2+aux); 
case 'E': break; 
case 'e': break; 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('270107','6855','5','3626932','5');
printf("%d",(tot_metros*4)/2+aux); 
default: 
printf("%s","Tipo invalido"); 
} 
system("PAUSE"); 
} 
 
 
if(tot_metros%2) 
aux = 1; 
else 
aux = 0; 
switch(tipo){ 
case 'I': break; 
case 'i': break; 
printf("%d",(tot_metros*3)/2+aux); 
break; 
case 'E': break; 
case 'e': break; 
printf("%d",(tot_metros*4)/2+aux); 
break; 
default: 
printf("%s","Tipo invalido"); 
} 
system("PAUSE"); 
} 
 
 
if(tot_metros%2) 
aux = 1; 
else 
aux = 0; 
switch(tipo){ 
case 'I': 
case 'i': 
printf("%d",(tot_metros*3)/2+aux); 
break; 
case 'E': 
case 'e': 
printf("%d",(tot_metros*4)/2+aux); 
break; 
default: 
printf("%s","Tipo invalido"); 
} 
system("PAUSE"); 
} 
 
 
switch(tipo){ 
case 'I': 
case 'i': 
printf("%d",(tot_metros*3)/2+aux); 
break; 
case 'E': 
case 'e': 
printf("%d",(tot_metros*4)/2+aux); 
break; 
default: 
printf("%s","Tipo invalido"); 
} 
system("PAUSE"); 
} 
 
 
 
 
 
 
 
6. 
 
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. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('191456','6855','6','3626932','6');
 
III A palavra then está presente na estrutura. 
IV O uso do else poderá não ser necessário. 
 
 
 
I está errada. 
 
 
II e IV estão corretas. 
 
 
IV está correta e a I não está correta. 
 
 
II está correta e a III não está correta. 
 
 
I e III estão corretas. 
 
 
 
Explicação: 
Não existe then na linguagem C 
Somente estão corretas a II e IV. 
Como está pedindo a errada, teremos: I e III estão corretas como resposta. 
 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
7. 
 
Considereo código abaixo. Considere que o usuário digite 11. 
O que será impresso para o usuário? 
 int main () 
{ 
int num; 
printf ("Digite um numero: "); 
scanf ("%d",&num); 
if (num==10) { 
 printf ("Show!"); 
} else { 
 if (num>10) { 
 printf ("Top!"); 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('1025811','6855','7','3626932','7');
 
 } else { 
 printf ("Mara!"); 
 } 
} 
return 0; 
} 
 
 
0 
 
 
return 0; 
 
 
Top! 
 
 
Mara! 
 
 
Show! 
 
 
 
Explicação: 
Quando o teclado é liberado pela execução da função scanf(); o usuário digita 11. 
Sendo assim, no primeiro if, como não é igual a 10, o fluxo vai para o else e ao 
chegar lá, é testado por um outro if e, como é maior do que 10, exibe TOP! e sai dos 
ifs encadeados. 
 
 
 
 
 
 
 
8. 
 
 
Preencha as lacunas abaixo para que a mensagem abaixo seja exibida, caso a variável Idade seja maior 
ou igual a 18 e a variável Peso seja maior que 50. 
 
if((Idade_ _ _18)_ _ _(peso_ _ _50)) 
{ 
printf("Você pode ser doador de Sangue"); 
} 
 
 
>=; e; >; 
 
 
<>; and; >; 
 
 
>=; &; >; 
 
 
>>; and; >; 
 
 
>=; &&; >; 
 
 
 
Explicação: 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('590884','6855','8','3626932','8');
Relendo a pergunta: 
Preencha as lacunas abaixo para que a mensagem abaixo seja exibida, caso a 
variável Idade seja maior ou igual a 18 e a variável Peso seja maior que 50. 
Preenchendo 
if((Idade >=18) && (peso > 50)) 
 
 
 
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" ); 
 
 
 
8 vezes 
 
 
9 vezes 
 
 
15 vezes 
 
 
10 vezes 
 
 
16 vezes 
 
 
 
Explicação: 
O aluno precisa ter entendido que a estrutura do for usa uma PA ou PG 
 
 
 
 
 
 
 
2. 
 
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++ ; 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('880556','6855','2','3626932','2');
 
 
Qual será a saída: 
 
 
Soma dos números inteiros menores que 50000 divisíveis por 7. 
 
 
Soma dos números inteiros menores que 50000 com resto 7. 
 
 
Soma dos números inteiros menores que 50000 divido por 7. 
 
 
Soma dos números inteiros menores que 50000 ímpares. 
 
 
Soma dos números inteiros menores que 50000. 
 
 
 
 
 
 
 
3. 
 
 
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 
 
 
 
 
 
 
 
4. 
 
 
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. 
 
 
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. 
 
 
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. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('779850','6855','3','3626932','3');
javascript:duvidas('780242','6855','4','3626932','4');
 
 
Pode-se omitir a declaração, e, mesmo assim, o comando for ainda será válido. 
 
 
 
 
 
 
 
5. 
 
 
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/ELSE e FOR 
 
 
SWITCH CASE e IF/ELSE 
 
 
WHILE, DO WHILE e SWITCH CASE 
 
 
FOR, WHILE e DO WHILE 
 
 
IF e SWITCH CASE 
 
 
 
 
 
 
 
6. 
 
 
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++ ) 
 
 
Somente a afirmativa II permite a repetição 10 vezes 
 
 
As afirmativas II , III e IV permitem a repetição 10 vezes 
 
 
As afirmativas II e III 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 
 
 
 
Explicação: 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('806240','6855','5','3626932','5');
javascript:duvidas('2948892','6855','6','3626932','6');
Na aula tem exemplos e o aluno só precisar saber quanto números fazem parte da 
sequência(PA). 
 
 
 
 
 
 
 
7. 
 
 
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 
 
 
2, 4, 6 
 
 
1 * 2 = 2 
2 * 2 = 4 
3 * 2 = 6 
 
 
2 
4 
6 
 
 
 
 
 
 
 
8. 
 
 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. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('1012749','6855','7','3626932','7');
javascript:duvidas('188919','6855','8','3626932','8');
 
 
 
 
2 4 4 8 12 20 32 52 
 
 
2 4 4 8 12 20 32 
 
 
2 4 6 8 19 12 14 16 
 
 
2 4 6 10 16 26 42 
 
 
2 4 6 10 16 26 42 68 
 
 
Analise as sentenças abaixo sobre a declaração de vetores e, em seguida, assinale a alternativa correta: 
I. Na linguagem C++, uma string é um vetor de caracteres terminado com um caracter nulo cujo valor 
inteiro é igual a zero (código ASCII igual a 0). 
II. O terminador nulo também pode ser escrito usando a convenção de barra invertida do C++ como sendo 
'\0'. 
III. Como precisamos reservar duas posições para o terminador (a barra e o zero), sempre iremos declarar 
o tamanho necessário menos um. 
 
 
 
Somente a sentença II está correta 
 
 
Todas as sentenças estão corretas 
 
 
Somente as sentenças I e II estão corretas 
 
 
Somente as sentenças II e III estão corretas 
 
 
Somente as sentenças I e III estão corretas 
 
 
 
Explicação: 
As duas primeiras estão corretas como poderá verificar na Aula 6. 
Errada somente a III: Como precisamos reservar duas posições para o terminador (a 
barra e o zero), sempre iremos declarar o tamanho necessário menos um. 
Porque o caractere\0 só ocupa uma posição e, por essa razão, sempre declaramos 
mais uma posição para ele. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
2. 
 
 
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. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Explicação: 
Na declaração de um vetor é necessário informar a quantidade de elementos que comporão o vetor, 
assim para 100 inteiros temos: 
int numerosI[100]; 
E como os indices de um vetor começam a partir de 0, temos : 
printf("\n%d\n",numerosI[pos-1]); 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
 
 
 
 
 
3. 
 
 
Um programador declarou os vetores abaixo e gostaria de fazer o trecho de entrada 
para armazenar códigos dos 43 funcionários e respectivos salários. 
 int x,codigos[43]; float salarios[43]; 
A dúvida dele está na linha do for. Você poderia indicar qual ele deveria escolher? 
 
 
 for(x = 1; x <= 43 ; x++ ) 
 
 
 for(x = 1; x < 43 ; x++ ) 
 
 
 for(x = 0; x < 44 ; x++ ) 
 
 
 for(x = 0; x < 43 ; x++ ) 
 
 
 for(x = 0; x <= 43 ; x++ ) 
 
 
 
Explicação: 
Saber que o número que fica dentro dos [ ] é o deslocamento em relação ao endereço 
base é fundamental para resolver a questão. 
Isso é bem explicado na AULA 6 
 
 
 
 
 
4. 
 
 
A linguagem C, ao contrário de outras linguagens de programação, não possui um tipo de dados 
correspondente às strings; no lugar, usam-se vetores e ponteiros 
Admitindo-se que existe declarado um vetor chamado nome de 50 posições(nome[50]), qual das opções 
abaixo efetua corretamente a leitura de seu primeiro nome? 
 
 
scanf("%c", nome[0]); 
 
 
scanf("%s&c", nome[0]); 
 
 
scanf("%s", nome); 
 
 
scanf("%&s", &nome); 
 
 
scanf("%s", &nome); 
 
 
Gabarito 
Comentado 
 
 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
5. 
 
 
 
Qual o elemento do vetor referenciado por vet[vet[5]]? 
 
 
1 
 
 
2 
 
 
9 
 
 
4 
 
 
3 
 
 
 
 
 
6. 
 
 
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}; 
 
 
int valores[5] = {10, 15, 20, 25, 30}; 
 
 
char valores[5] = {'A', 'B', 'C', 'D'}; 
 
 
char valores = "ABCD"; 
 
 
 
Explicação: 
Errada: char valores = "ABCD"; porque faltam []. 
Deveria ser assim: char valores[] = "ABCD"; 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
7. 
 
 
Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string? 
 
 
 
strcout 
 
 
strlen 
 
 
strcat 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
strcap 
 
 
strcamp 
 
 
 
 
 
8. 
 
 
 
 
Qual o elemento do vetor referenciado por vet[3]? 
 
 
0 
 
 
4 
 
 
1 
 
 
7 
 
 
2 
 
 
 
Explicação: 
Vetores são estruturas contíguas onde suas posições são referenciadas a partir de 
índices, onde o índice inicial é 0 (zero), o seguinte 1 e assim por diante. 
O vetor é referenciado pelo endereço do primeiro byte do conjunto logo, o primeiro 
elemento tem o mesmo endreço do vetor e como o que fica entre [ ] é o deslocamenro 
do elmento em relação ao endreço base, 0 fica dentro dos [ ]. 
Desta forma o conteúdo do campo Vet[3] é 7. 
 
 
 
Analisando o códio a seguir, pode-se afirmar que: 
#include 
#define T 5 
int main() 
{ 
int x[T][T], i,j; 
for(i=0; i< T; i++) 
for(j=0; j< T; j++) 
x[i][j]=j+1; 
for(i=0; i< T; i++) 
for(j=0; j< T; j++) 
printf("x[%d][%d]: %d\t",i, j,x[i][j]); 
return 0; 
} 
 
 
Os valores armazenados nos elementos de uma mesma linha na matriz são zerados. 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
O programa não executa pois há falta de chaves. 
 
 
Os valores armazenados nos elementos de uma mesma coluna na matriz são zerados. 
 
 
Os valores armazenados nos elementos de uma mesma coluna na matriz são iguais. 
 
 
Os valores armazenados nos elementos de uma mesma linha na matriz são iguais. 
 
 
 
Explicação: 
Neste caso o preenchimento da matriz está sendo realizado de forma horizontal, 
for(j=0; j< T; j++) 
x[i][j]=j+1; Lembrar que durante esta execução o valor da linha é fixo o que varia é o valor da coluna. 
isto é preenchendo-se por linha e como as linhas tem valores iguais pode-se afirmar que: 
Os valores armazenados nos elementos de uma mesma coluna na matriz são iguais. 
 
 
 
 
 
2. 
 
 
Um treinador de uma equipe de futebol com 22 atletas gostaria de declarar matrizes 
para guardar nomes, total de jogadas boas e total de jogadas perdidas. 
Qual das opções abaixo possibilitaria isso se ele usasse, somente, matrizes 
bidimensionais? 
 
 
int jogadas[22][2]; char nomes[22][30]; 
 
 
int jogadasB[22], jogadasR[22]; char nomes[22][30]; 
 
 
int jogadas[22][2]; char nomes[22]; 
 
 
int jogadas[21][1]; char nomes[21][30]; 
 
 
int jogadasB[21], jogadasR[21]; char nomes[21][30] 
 
 
 
Explicação: 
Lembrando que o número que fica dentro dos [ ] significa o total, de fato, que 
desejamos. 
 
 
 
 
 
3. 
 
Analisando o códio a seguir, pode-se afirmar que: 
#include < stdio.h > 
#define T 5 
int main() 
{ 
int x[T][T], i,j; 
for(i=0; i< T; i++) 
for(j=0; j< T; j++) 
x[i][j]=j+1; 
for(i=0; i< T; i++) 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
for(j=0; j< T; j++) 
if(i==j)printf("x[%d][%d]: %d\t",i, j,x[i][j]); 
return 0; 
} 
 
 
O programa cria uma matriz de duas dimensões e exibe os elementos da diagonal principal. 
 
 
O programa cria uma matriz de duas dimensões e exibe todos seus elementos. 
 
 
O programa multiplica dois vetores de dimensão igua a 5. 
 
 
 
O programa não executa; 
 
 
O programa cria uma matriz de duas dimensões vazia. 
 
 
 
Explicação: 
Neste caso o aluno deve conhecer o conceito de diagonal principal de uma matriz, isto é onde os índices 
linha e colna são iguais. 
Assim como temos: 
for(j=0; j< T; j++) 
if(i==j)printf("x[%d][%d]: %d\t",i, j,x[i][j]); 
Pode-se afirmar que: O programa cria uma matriz de duas dimensões e exibe os elementos da diagonal 
principal. 
 
 
 
 
 
4. 
 
 
Uma matriz é definida como float mat[5][10]; Quantos elementos esta matriz armazena? 
 
 
 
5 elementos 
 
 
50 elementos 
 
 
45 elementos 
 
 
36 elementos 
 
 
10 elementos 
 
 
 
 
 
5. 
 
 
Um programador precisa armazenar em uma tabela a quantidade de alunos, por turma, que tiraram 
notas abaixo da méida, exatamente na média e acimma da média. 
Sabendo que a méida é 6.0 e que esta tabela, chamada de mapa, servirá para armazenar as notas das 
30 turmas existentes, e que para o programa que estásendo desenvolvido o melhor será organizar as 
turmas por linhas na tabela. 
Marque a alternativa que melhor representa a declaração desta tabela. 
 
 
int turmas[30]; 
 
 
int mapa[30][3]; 
 
 
float turmas[30]notas[3]; 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
int mapa[3][30]; 
 
 
 
float mapa[30][30]; 
 
 
 
Explicação: 
A declaração de um vetor bidimensional é feita na forma identificador [nº de linhas][nº de colunas], 
como os dados a serem armazenado são grandezas inteira, isto é quantidade de alunos e necessita-se 
de 30 posiçoes para linhas que representam as turmas e apenas 3 posiçoes para as colunas, o correto é 
int mapa[30][3]; 
 
 
 
 
 
6. 
 
 
Analise o programa a seguir e escolha a opção que ilustra o que será exibido para o usuário caso ele 
digite o valor 7 
. 
 
 
sexta 
 
 
quarta 
 
 
sábado 
 
 
quinta 
 
 
dia não existe 
 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
7. 
 
 
O departamento do pessoal de uma empresa precisa de um programa para 
armazenar nomes, cargos, número de dependentes e salários de 32 funcionários. 
Um desenvolvedor pensou em algumas linhas que precisariam ser incluídas no código 
para tornar possível a construção dos trechos de entrada, saída e outros necessários. 
Observe as declarações abaixo e escolha a que possibilita isso. 
 
 
 
 
 
 
float sal[32]; int dep[32]; char nomes[32][30], cargos[32][20]; 
 
 
float sal[32]; int dep[32]; char dados[32][20]; 
 
 
float sal[32]; int dep[32]; char nomes[32], cargos[32]; 
 
 
float dadosN[32][2]; char dadosC[32][30]; 
 
 
float sal[31]; int dep[31]; char nomes[31][30], cargos[31][20]; 
 
 
 
Explicação: 
Lembrando que o número que fica dentro dos [ ] significa o total, de fato, que 
desejamos. 
O número de caracteres de um nome e profissão são baseados no comum: 25 a 30 
caracteres para um nome é razoável. 
Tipos diferentes não se agrupam. 
 
 
 
 
 
 
8. 
 
Considere que todas as bibliotecas necessárias foram declaradas. 
 
int main() 
{ 
int mat[3][3], i, j, det; 
puts("Codigo que calcula o determinante de uma matriz 3x3\n"); 
____{ 
puts("Digite os elementos da matriz\n"); 
____(i=0;i<3;i++) 
____(j=0;j<3;j++) 
scanf("%d", &mat[i][j]); 
fflush(stdin); 
det= (mat[0][0]*mat[1][1]*mat[2][2]) + (mat[0][1]*mat[1][2]*mat[2][0]) + 
(mat[0][2]*mat[1][0]*mat[2][1]) - ((mat[0][1]*mat[1][0]*mat[2][2]) + 
(mat[0][0]*mat[1][2]*mat[2][1]) + (mat[0][2]*mat[1][1]*mat[2][0])); 
printf("\ndet=%d\n", det); 
} ____ (det==0); 
system("pause"); 
return (0); 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
} 
Complete as lacunas do código da maneira correta para que o programa funcione corretamente. 
 
 
do-if-else-while 
 
 
do-if-for-while 
 
 
while-for-do-for 
 
 
do-for-for-while 
 
 
do-while-for-for 
 
 
 
 
Um desenvolvedor, ao construir um programa, precisou de uma função que calculasse o 
produto entre dois números inteiros. Ele construiu uma função, tendo considerado a 
propriedade de fechamento, isto é, o produto de dois inteiros, inteiro será e colocou a 
linha abaixo no programa. 
cout << " Produto = " << multiplicar(a,b); 
Observe as opções abaixo e escolha aquela onde o protótipo da função está presente. 
 
 
 
 
float multiplicar(int a, int b) 
 
 
int multiplicar(int a, b); 
 
 
void multiplicar(int a, int b); 
 
 
int multiplicar(int a, int b) ; 
 
 
void multiplicar(int a, int b) 
 
 
 
Explicação: 
Se fosse do tipo void, não precisaria de cout. Todo protótipo termina com ; . O tipo de 
cada parâmetro precisa estar presente 
 
 
 
 
 
 
 
2. 
 
 
Função em C onde são colocados todos os comandos e outras funções que desejamos que sejam 
executadas 
 
 
main() 
 
 
return 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('652580','6855','2','3626932','2');
 
 
begin 
 
 
systema("pause") 
 
 
end 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
 
 
3. 
 
 
5- Veja o código a seguir: 
#include < stdio.h > 
#include < stdlib.h > 
void imprime(int v[]) 
{ 
 int i; 
 for(i=0;i<10;i++)printf("v[%d]=%d\n", i, v[i]); 
} 
int main(int argc, char *argv[]) { 
 int num[]={1,2,3,4,5,6,7,8,9,10}; 
 __________________________ // chamada a função imprime 
 
 return 0; 
} 
Está faltando o segundo comando na função main(), este deve ser uma chamada a função imprime(int 
v[]). Sabendo-se que o parâmetro a ser passado é um vetor,marque a alternativa com a forma correta 
da chamada desta função, de modo que o vetor num[] declarado na primeira linha da função main() 
tenha seus valores exibidos na tela. 
 
 
 
imprime(num); 
 
 
imprime(num[]); 
 
 
imprime(int num []); 
 
 
 
imprime(vet); 
 
 
imprime(v[]); 
 
 
 
Explicação: 
A chamda correta a esta função é imprime(num); pois em seu cabeçalho já está explicito que o 
parãmeetro é do tipo vetor de inteiros, assim basta inserir o indentificador do vetor no momento da 
chamada da função. 
 
 
 
 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2953928','6855','3','3626932','3');
javascript:duvidas('2954283','6855','4','3626932','4');
4. 
 
 
Um Engenheiro civil gostaria de construir uma função que pudesse calcular o total de 
metros lineares que deveriam ser comprados para montar o rodapé de salas 
retangulares. 
Ele pediu ao desenvolvedor para definir a função. 
Assinale a opção que corresponde à definição CORRETA da função. 
 
 
 
float rodapeRet(float largura, float comprimento); 
 { return largura * comprimento;} 
 
 
float rodapeRet(float largura, float comprimento); 
{ return largura + comprimento * 2;} 
 
 
float rodapeRet(float largura, comprimento) 
{ return largura + comprimento * 2;} 
 
 
float rodapeRet(float largura, float comprimento) 
{ return largura * comprimento;} 
 
 
float rodapeRet(float largura, float comprimento) 
{ return (largura + comprimento)*2;} 
 
 
 
Explicação: 
A resposta é simples, pois só precisava de um conhecimento anterior sobre o perímetro 
de um retângulo além do que foi estudado na AULA 8 
 
 
 
 
 
 
 
5. 
 
 
O cabeçalho de uma função é composto por: < tipo de retorno > nome da função ( lista de parâmetros). 
A lista de parâmetros, quando houver deve ter os parãmetros separados por vírgula e estes são entradas 
para 
a função, enquanto o tipo de retorno indica o tipo de valor que será a saída de uma função. Entretanto 
algumas 
funções não retornam nenhum valor, neste caso deve-se usar no seu cabeçalho para tipo de retorno a 
palavra: 
 
 
 
return 
 
 
boolean 
 
 
float 
 
 
void 
 
 
 
int 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2953913','6855','5','3626932','5');
 
 
 
Explicação: 
void é uma palavra reservada da linguagem C que quando usada antes do nome de uma função indica 
que a mesma não retorna valor. 
 
 
 
 
 
 
 
6. 
 
 
Analise o código a seguir: 
#include < stdio.h > 
#include < stdlib.h > 
void modifica(int v[]) 
{ 
 int temp=v[0]; 
 v[0]=v[1]; 
 v[1]=temp; 
} 
int main(int argc, char *argv[]) { 
 int vetor[]={5,3}; 
 modifica(vetor); 
 printf("vetor[0]=%d\tvetor[1]=%d", vetor[0], vetor[1]); 
 return 0; 
} 
Marque a alternativa correta: 
 
 
A saída que será exibida é v[0]=5 e v[1]=3 os valores dos campos do vetor não são alterados, 
na função main(). 
 
 
A saída queserá exibida é v[0]=5 e v[1]=5 os valores dos campos do vetor são copiados, na 
função main(). 
 
 
A saída que será exibida é v[0]=3 e v[1]=5 os valores dos campos do vetor são alterados, na 
função main(). 
 
 
A saída que será exibida é v[0]=3 e v[1]=3 os valores dos campos do vetor são copiados, na 
função main(). 
 
 
O programa não executa, pois há erro nas atribuições no corpo da função modifica(int v[]). 
 
 
 
 
Explicação: 
Na função o acesso ocorre exatamente no vetor que foi passado como parâmetro, portanto há alteração 
do conteúdo do mesmo. 
 
 
 
 
 
 
 
7. 
 
Em todos os programas codificados em linguagem C aparece a função main(). 
Verifique as afirmativas. 
I- A execução de um programa em C inicia na primeira linha da função main() 
II - Alguns programas complexos em C necessitam de mais de uma função main() 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2953920','6855','6','3626932','6');
javascript:duvidas('2953917','6855','7','3626932','7');
 
III - A função main() em detgerminadas situações pode ser opcional no código. 
IV - Embora muito importante não é possivel escrever um programa em C apenas com a função main(). 
Marque a alternativa CORRETA: 
 
 
Apenas a afirmativa I está correta 
 
 
As afirmativas I e II estão corretas 
 
 
As afirmativas I e III estão corretas 
 
 
As afirmativas I e IV estão corretas 
 
 
Todas as afirmativas estão corretas 
 
 
 
 
Explicação: 
A execução de um programa em C inicia-se a partir do primeiro comando da função main(). 
Não pode haver num mesmo programa mais de uma função main() e todo programa em C deve ter 
uma função main(), mesmo que o prorama se resuma apenas na função main(). 
 
 
 
 
 
 
 
8. 
 
 
Os programas inicialmente eram desenvolvidos em um único bloco, com a introdução da modularização 
de programas 
foi possível garantir uma melhora na legibilidade dos códigos, um maior aproveitamento e reuso de 
códigos e melhora na manutenção de sistemas. 
Assim o principal elemento da modularização de programas é: 
 
 
 
structs 
 
 
 
vetor 
 
 
tipo de dados 
 
 
funções 
 
 
variáveis 
 
 
 
Explicação: 
As funções são blocos de programas que proporcionam, um programa dividido em 
módulos, podendo estas funções serem utilizadas varias vezes no mesmo programa 
ou ainda em outros programas, garantindo o reuso de código. Como as funções 
são blocos pequenos de códigos com objetivos bem específicos, o entendimento da funcionalidade 
do bloco é facilitada, garantindo uma maior legibilidade do programa e em consequ~encia 
maior facilidade para manutenção do programa. 
Assinale a opção onde está presente a função que " extrai " dados numéricos de um 
vetor de char, não do teclado, além de evitar problemas na alternância na leitura de 
valores numéricos com vetores de char ao trabalharmos com arquivos. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
javascript:duvidas('2953907','6855','8','3626932','8');
 
 
 
 
fgets(...); 
 
 
fscanf(...); 
 
 
fread(...); 
 
 
fgetc(...); 
 
 
sscanf(...); 
 
 
 
Explicação: 
Essa é uma Aula com muitas funções e o aluno precisa conehcer todas. 
 
 
 
 
 
2. 
 
 
Considere que as bibliotecas necessárias foram devidamente 
declaradas. 
 
int main() { 
FILE *arq ; 
int i; 
_____ c ; 
arq = _____ ( " jornal.txt " , " r " ) ; 
if ( arq == NULL ){ 
printf ( " Erro na abertura do arquivo " ) ; 
system ( " pause " ) ; 
exit ( 1 ) ; 
} else 
 
for ( i = 0; i<5; i++){ 
c = fgetc ( arq ) ; 
printf( "%c", c ) ; 
} 
_____( arq ) ; 
system ( " pause " ) ; 
return 0; 
} 
 
 
Complete as lacunas do código para que o programa funcione 
corretamente. 
A ordem em que as palavras são dispostas na resposta, devem 
preencher respectivamente as lacunas. 
 
 
int - open - close 
 
 
char - fopen - fechar 
 
 
char - fopen - fclose 
 
 
float - fopen - fclose 
 
 
int - abrir - fopen 
 
 
Gabarito 
Comentado 
 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
 
3. 
 
 
A função fgets(): 
 
 
 
imprime uma linha inteira de uma vez. 
 
 
lê uma linha inteira de uma vez. 
 
 
imprime um caracter de cada vez. 
 
 
lê um caracter de cada vez. 
 
 
lê um arquivo inteiro de uma vez. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
4. 
 
 
Sabe-se que o modo padrão é o texto logo, não 
precisa incluir ao final de cada letra t. 
Observe as opções abaixo e escolha a que deverá ser 
usada quando se abre um arquivio, pois 
permite leitura/ escrita e alteração no modo 
texto(txt). 
 
 
 
r 
 
 
a+ 
 
 
r+ 
 
 
a 
 
 
w+ 
 
 
 
Explicação: 
Para responder a essa questão, o aluno precisa conhecer os seis modos de abertura 
para um arquivo texto. 
 
 
 
 
 
5. 
 
 
Para a manipulação de arquivos na linguagem C, primeiro 
precisamos abrir o mesmo. Sabendo-se que o arquivo tem o nome 
de texto.txt, que foi associado com a variável de nome: arq, e que 
é do tipo texto, avalie cada uma das afirmativas e marque a que 
faz a abertura para ler e/ou gravar dados no fim do 
arquivo corretamente seguindo as regras da linguagem. 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
arquivo = fopen("material.dat", "w+"); 
 
 
arq = fopen("texto.txt", "w"); 
 
 
arq = fopen("texto.txt", "a+"); 
 
 
arquivo = fopen("material.dat", "a+"); 
 
 
arquivo = fopen("material.dat", "r+"); 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
6. 
 
 
Na manipulação de arquivos na linguagem C, no processo de 
abertura do mesmo, podemos ter erros: devido a não existência 
do arquivo; ao arquivo estar corrompido; etc, não sendo possível 
abrir o mesmo. 
Das afirmativas apresentadas qual define corretamente o que 
pode ser feito em relação ao erro na abertura, segundo o que foi 
apresentado nas aulas. 
 
 
O tratamento é feito com um if, e tendo havido problemas no arquivo de texto, o mesmo é 
eliminado e retornado uma mensagem padrão para o usuário. 
 
 
Não é possível tratar este tipo de erro, pois precisamos da estrutura Try ... Catch que consegue 
prevenir e evitar o fechamento do programa. 
 
 
Não é necessário tratar, pois não existindo o arquivo ele simplesmente cria um novo e nunca 
terá problema. 
 
 
A função fopen, retorna NULL quando não consegue abrir o arquivo e o usuário pode tratar o 
conteúdo da variável associada ao arquivo, comparando com o valor NULL. 
 
 
A palavra chave FILE, que permite fazer a associação do arquivo, mantem o valor NULL caso 
não seja possível abrir o arquivo, desta forma, utilizando o if, o usuário pode mandar uma 
mensagem adequada para o usuário. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
7. 
 
 
Assinale a opção onde está presente a função que tem 
como finalidade fechar o arquivo, embora todos os 
arquivos sejam fechados quando o programa é 
finalizado. 
 
 
fputs( ...); 
 
 
fclose(...); 
 
 
fopen(..); 
 
 
feof(...); 
 
 
fseek( ...); 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
Explicação: 
Essa é uma resposta conclusiva.8. 
 
 
Na manipulação de arquivos na linguagem C, podemos utilizar 
várias funções da linguagem. Cada uma delas tem um propósito 
específico. 
Das afirmativas apresentadas qual define corretamente qual a 
finalidade da função feof() . 
 
 
Funções para gravar uma linha. 
 
 
Função que detecta o fim do arquivo. 
 
 
Funções para ler um caractere. 
 
 
Funções para leitura formatada. 
 
 
Função que fecha um arquivo. 
 
 
Assinale a opção que apresenta a função que seta o indicador de posição do arquivo no 
início 
 
 
 
ftell(...); 
 
 
fopen(...); 
 
 
rewind(...); 
 
 
fputs(...); 
 
 
fclose(...); 
 
 
 
Explicação: 
São muitas funções nessa aula que precisam ser estudadas. 
 
 
 
 
 
2. 
 
 
A função _________ funciona como a função scanf(), porém, ao 
invés de ler os dados de teclado, estes dados são lidos de um 
arquivo. 
 
 
fscanf() 
 
 
fprint() 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
fgetc() 
 
 
sscanf() 
 
 
fgets() 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
3. 
 
 
Assinale a opção que apresenta a função que lê 
dados de um arquivo binário. 
 
 
fgets(...); 
 
 
sscanf(...); 
 
 
fread(...); 
 
 
fgetc(...); 
 
 
fscanf(...); 
 
 
 
Explicação: 
São muitas funções nessa aula que precisam ser estudadas. 
 
 
 
 
 
4. 
 
 
Assinale a opção que apresenta a função que grava 
dados em um arquivo binário. 
 
 
fputc(...); 
 
 
printf(...); 
 
 
fwrite(...); 
 
 
fprintf(...); 
 
 
fputs(...); 
 
 
 
Explicação: 
São muitas funções nessa aula que precisam ser estudadas. 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
5. 
 
 
Assinale a opção que apresenta o modo de abertura 
que permite leitura/ escrita e acrescentar ao final em 
um arquivo binário. 
 
 
rb+ 
 
 
r+ 
 
 
ab+ 
 
 
a+ 
 
 
w+ 
 
 
 
Explicação: 
Para responder a essa questão, o aluno precisa conhecer os seis modos de abertura 
para um arquivo binário. 
 
 
 
 
 
6. 
 
 
A função rewind() de protótipo 
 
void rewind (FILE *fp); 
tem como comportamento: 
 
 
Adiantar para a próxima posição corrente do arquivo. 
 
 
Adiantar a posição corrente do arquivo para o início. 
 
 
Adiantar a posição corrente do arquivo para o fim. 
 
 
Retornar a posição corrente do arquivo para o fim. 
 
 
Retornar a posição corrente do arquivo para o início. 
 
 
Gabarito 
Comentado 
 
 
 
 
Gabarito 
Comentado 
 
 
 
 
 
 
 
7. 
 
 
Nas aulas aprendemos sobre as funções de leitura e gravação. 
A respeito da função fwrite assinale a alternativa correta. 
 
 
fwrite(endreçoElemento, tamanho, quantidade); 
 
 
fwrite(quantidade, ptrArq, endreçoElemento,tamanho); 
 
 
fwrite(endreçoElemento, tamanho, quantidade, ptrArq); 
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
https://simulado.estacio.br/bdq_simulados_exercicio.asp
 
 
fwrite(endreçoElemento, ptrArq, quantidade); 
 
 
fwrite( tamanho, endreçoElemento, ptrArq);

Outros materiais