Buscar

INTRODUÇÃO A PROGRAMAÇÃO ESTRUTURADA EM C

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

TEMA 1 
 
 
1. Tendo em vista o pensamento computacional, qual das opções abaixo não é um pilar para este conceito? 
Adaptabilidade 
 
2. O reconhecimento de padrões está presente em nossas vidas desde a Educação Básica. Pode-se afirmar que 
ele consiste em: 
Identificar repetições ou regras de recorrência. 
 
3.Considere o fluxograma a seguir: 
 
 
Suponha que o usuário tenha informado o valor 1,80 no passo 3 e o valor 70 no passo 5. Qual será o resultado 
deste fluxograma? 
Será exibida a frase “Você não está abaixo do peso 
 
4.(FCC - 2016 - Adaptada) Considere o diagrama abaixo. 
 
Analisando o raciocínio lógico e as estruturas lógicas utilizadas no diagrama, é correto afirmar que: 
A lógica implementa a solução de cálculo da média de 2 números diferentes de zero. 
 
5.Observe o trecho de pseudocódigo a seguir: 
a ← 10 
b ← 15 
a ← a + b 
Imprimir (a) 
Determine a saída de um programa que fosse escrito com este trecho. 
25 
 
6.Considere o seguinte programa, escrito em Portugol: 
 
Na linha em que está escrito //TRECHO OMITIDO, deve ser inserida uma instrução que imprima na tela a 
seguinte frase: “O número digitado foi: , ” seguida do valor que o usuário digitou. Ou seja, se o usuário tiver 
digitado o valor 1 quando foi solicitado, a frase impressa na tela deve ser O número digitado foi: 1 Para executar 
corretamente esta instrução, a linha omitida deve ser: 
Escreva (“O número digitado foi: ”, numero) 
 
 
TEMA 2 
 
1. (Adaptada de: MPU - FCC - Analista de Informática - Desenvolvimento de Sistemas - 2007) O tipo de dados 
float refere-se aos dados do tipo: 
Real 
 
Comentário 
Os do tipo float são dados com casas decimais. Por isso, eles são representados na Matemática como números 
reais. 
 
 
2. (Adaptada de: IBGC - Hemominas - Técnico de Informática - 2013) Assinale a alternativa que apresenta um 
exemplo típico de dados numéricos sem casas decimais: 
 
558 
 
Comentário 
As letras A e D representam tipos de dados do tipo char. B apresenta um tipo de dado numérico; C, tipos de dados 
com casas decimais. 
 
 
3. (FUNIVERSA - PC-DF - Perito Criminal - Informática - 2012) São palavras-chave da linguagem C no padrão 
ANSI, não podendo, portanto, ser utilizadas como nomes para variáveis: 
 
int, long, static, void 
 
Comentário 
Na letra A, são apresentados os termos master, core e newline, que não pertencem à linguagem C. Nas letras B 
e D, os termos core e master se repetem. 
 
 
4. Em uma aplicação para o cálculo do IMC, foram definidas duas variáveis: peso e altura. Devido a requisitos 
oriundos do mundo real, elas são definidas como float. Assinale a alternativa que apresenta a forma incorreta de 
definição dessas variáveis: 
 
float peso, float altura; 
 
Comentário 
Depois de um identificador, só é possível haver um sinal de ponto e vírgula ou uma vírgula seguida de outro 
identificador. 
 
 
5. (Adaptada de: CESPE - Banco da Amazônia - Técnico-científico - Tecnologia da Informação - Administração de 
Dados - 2010) Acerca das estruturas de informação, considere a seguinte afirmação: nos tipos primitivos de dados 
do tipo inteiro, os valores são números inteiros para os quais são definidas operações matemáticas. Esses tipos 
de dados não possuem casas decimais. 
Na implementação de um aplicativo, podemos representar a ideia apresentada por meio do seguinte tipo inteiro: 
 
A idade 
 
Comentário 
Exemplos de idades de pessoas são 20 ou 50 anos, ou seja, números sem casas decimais. Portanto, utilizamos 
o tipo primitivo inteiro. A cor dos olhos é medida em cadeia de caracteres (char), como, por exemplo azul, verde e 
castanho-claro. O peso, por sua vez, deve ser medido em quilogramas (ou libras) com um número real (tipo 
primitivo float ou double), como 70,0 Kg. Já o endereço é representado como uma cadeia de caracteres (char), 
como Av. Paulista, 100. 
 
 
6. Sejam as variáveis a, b e c do tipo int (inteiro). Considerando as linhas de código na linguagem C abaixo: 
a = 3, b = 2, c = 2; 
c++; 
c += !a >= b && c != b; 
Assinale a alternativa que corresponda ao valor da variável c ao final da execução 
3. 
 
 
Comentário 
Vamos analisar a execução das linhas de código: 
Na primeira linha as variáveis a, b, c (todas do tipo int) são inicializadas com os valores 3, 2 e 2, respectivamente; 
Na segunda linha a variável c é incrementada em 1 unidade. Logo, c = 3 e as demais variáveis permanecem 
inalteradas (a = 3 e b = 2); 
Na terceira linha temos a expressão lógica !a >= b && c != b sendo somada ao valor de c e atribuída à própria 
variável c ; 
Do lado esquerdo da expressão temos a verificação se a negação de a (!a) é maior ou igual a b. Como o valor 
de a é diferente de zero, portanto considerado na linguagem C como um valor verdadeiro, a sua negação será 
considerada como falso, ou seja, 0 (zero). E como b tem valor igual a 2, o resultado de !a >= b (0 >= 2) será 
falso (F); 
Do lado direito da expressão temos a verificação se a variável c é diferente de b. Após ter sido incrementada, c 
= 3. E como b = 2, c != b será verdadeiro (V); 
Substituindo na expressão !a <= b && c != b, temos F && V, ou seja, falso E verdadeiro, o que resulta em falso; 
Resta atribuir o resultado da expressão lógica à variável c. 
Como c é do tipo inteiro, o valor falso será representado pela linguagem C como 0 (zero); 
Substituindo em c += !a >= b && c != b, temos c += 0, que é o mesmo que c = c + 0. 
Assim, c = 3 + 0 = 3. 
 
 
7. (Adaptado de: NUCEPE - SEDUC-PI - Professor de Informática - 2009) Assinale a alternativa que mostra o 
operador lógico OU em linguagem C: 
|| 
 
Comentário 
Os símbolos das letras A e D não pertencem à linguagem C. O símbolo de C é o e-lógico. 
 
 
8. (FCC - TRF - 4ª Região - Técnico Judiciário - Tecnologia da Informação - 2014) O tipo booleano é um tipo de 
dado utilizado na programação de computadores. Em operações lógicas, o resultado será sempre um valor 
boolean TRUE ou FALSE.Muitas vezes, tais operações são apresentadas em uma tabela conhecida como tabela 
verdade. Observe este exemplo: 
As lacunas I, II ou III são preenchidas, correta e respectivamente, por: 
True, true e false 
True, false e false 
False, true e true 
True, true e true 
 
Comentário 
Os valores calculados derivam diretamente das tabelas verdade apresentadas anteriormente: 
 
 
 
9. (FUNDATEC - Prefeitura de Chuí - RS - Fiscal de Tributos - 2019) Observe a seguinte tabela verdade:
Os valores lógicos que preenchem (1) e (2) são, respectivamente: 
Falso - Verdadeiro 
Verdadeiro - Verdadeiro 
Verdadeiro - Falso 
Falso - Falso 
 
Comentário 
Os casos (1) e (2) são obtidos na verificação dos valores de P ^ Q nas tabelas verdade já apresentadas. 
 
 
10. Considere o seguinte segmento de código na linguagem C: 
int a=5, b=2; 
float c=7, d=3; 
int e, f; 
float g, h; 
e=a/b; 
f=c/d; 
g=a/b; 
h=c/d; 
Assinale a alternativa que apresenta os valores das variáveis término da execução: 
5, 2, 7.0, 3.0, 2, 2, 2.0, 2.3 
5, 2, 7.0, 3.0, 3, 4, 2.0, 2.3 
5, 2, 7.0, 3.0, 2, 2, 2.5, 2.3 
5, 2, 7.0, 3.0, 3, 4, 2.5, 2.3 
 
Comentário 
Vemos que a/b é uma divisão inteira. Assim, seu resultado é inteiro; portanto, a/b=2. Quando esse valor é atribuído 
ao inteiro e, tal inteiro apenas recebe seu valor: e=2. Quando essa atribuição é feita a um número ponto flutuante, 
ele é convertido; logo, g=2.0. 
Observamos que c/d é uma divisão de números ponto flutuante sendo atribuída a um número inteiro, ou seja, 
depois da divisão com ponto flutuante (2.33333). Quando atribuído a um número inteiro, ele é convertido: f=2; já 
para um ponto flutuante, não há conversão: h=2.3. 
 
11. (UFTM - Engenharia da Computação ou Engenharia da Produção - 2018) Aponte, entre as alternativas abaixo, 
os resultados da resolução da seguinte expressão lógica (escrita na linguagem C) para os valores de A, B e C 
definidos nos cenários I, II e III: 
(A && B) && ((C || A || B) || (!A && C)) 
I: A=true, B=true, C=false 
II: A=false, B=true, C=true 
III: A=false, B=true, C=false 
 
I: true, II: false, III: false 
I: true, II:true, III: false 
I: false, II: false, III: false 
I: false, II: true, III: false 
 
Comentário 
Devemos inicialmente montar a tabela verdade: 
 
Basta agora confrontar os valores da tabela verdade com os dados do enunciado apresentados nos itens I, II e III 
para encontrar o valor da expressão e os valores das variáveis mais adequados. 
 
TEMA 3 
1. Qual é o valor armazenado na variável a após a execução destas linhas? 
 
Um valor aleatório. 
 
2. Qual é o valor armazenado na variável ch após a execução destas linhas? 
 
‘B’. 
 
3.Considere o seguinte trecho de código escrito em C: 
 
Assinale a alternativa que apresenta, corretamente, o conteúdo a ser exibido na tela quando o trecho for 
executado. 
a = 6 e b = 1. 
 
4.Considere o seguinte trecho de código escrito em C: 
 
Assinale a alternativa que apresenta, corretamente, o conteúdo a ser exibido na tela quando o trecho for 
executado: 
a = 10 e letra = L. 
 
5.Considere o seguinte trecho de código escrito em C: 
 
Suponha que o usuário tenha entrado com os valores: 
15 
6 
Assinale a alternativa que apresenta, corretamente, o resultado da execução desse trecho. 
 
A variável c terá um valor aleatório. 
 
 
6.Considere o seguinte trecho de código escrito em C: 
 
Suponha que o usuário tenha entrado com os valores: 
1.80 
75 
Assinale a alternativa que apresenta, corretamente, o resultado da execução desse trecho. 
 
Seu IMC vale 23.148149. 
 
 
 
TEMA 04 
 
1) (Baseada em CESPE - 2017 - TRT - 7ª Região (CE) - Analista Judiciário - Tecnologia da Informação) 
 
A estrutura lógica presente no diagrama apresentado é do tipo: 
 
SE ENTÃO SENÃO 
 
2) (Baseada em FCC - 2010 - SP - Agente de Defensoria - Analista de Sistemas) Marque a alternativa que 
apresenta o comando utilizado na estrutura de decisão composta, ou seja, que possua a opção a ser executada 
caso a condição seja verdadeira e caso a condição seja falsa. 
 
if{}else{} 
 
3)(Baseado em IFAL – 2014) Para que faixa de valores da variável x o seguinte trecho de código imprime a letra 
C?
 
100<=x<=200 
 
4) Nossos carros podem ser abastecidos com álcool ou com gasolina, mas o preço e o rendimento são bem 
diferentes. Então, como devemos abastecer? Diz a sabedoria popular que, para que seja recomendável o 
abastecimento com álcool, o preço deste combustível deverá ser até 70% do preço da gasolina. Assim, marque 
a opção que apresenta o complemento do código de um programa em C que, após ter sido fornecido pelo 
usuário o preço do litro dos dois combustíveis, informe com qual deveremos abastecer. 
Código existente: 
 
if(preco_gasolina>0) 
 if((preco_alcool/preco_gasolina)<=0,7) 
 printf(" Álcool\n"); 
 else 
 printf(" Gasolina\n"); 
 
5)(Baseado em FCC – TRT – 9ª Região - Analista Judiciário - Tecnologia da Informação) 
Considere o segmento de código abaixo: 
 
Sobre o código acima, é correto afirmar que: 
 
Se for digitada uma letra maiúscula ‘F’ ou minúscula ‘f’ será impresso "Você é do sexo feminino". 
 
 
6) Marque a opção que apresenta apenas tipos válidos que podem ser empregados em uma estrutura do tipo 
switch: 
int, char e long 
 
7) Retornando ao caso da média, temos agora outra situação. O aluno é considerado aprovado se a média das 
duas provas AV1 e AV2 é maior do que 7, porém, será considerado “em recuperação” no caso de a média estar 
entre 5 e 7, e estará reprovado se a média for abaixo de 5. A nota máxima de um aluno é 10. Marque a 
alternativa que apresenta os testes que deverão ser completados no código abaixo. 
 
EXPRESSAO1: media>=7 
EXPRESSAO2: media<=10 
EXPRESSAO3: media>=5 
EXPRESSAO4: media>=0 
 
8) Considere o if abaixo. 
 
Marque a alternativa que apresenta o operador ternário que substitui este if. 
 
c = (a>b)?3:4; 
 
 
 
TEMA 05 
 
1. Assinale a opção que apresenta corretamente a estrutura do comando FOR, para mostrar os números pares 
de 2 a 2002 (inclusive), em ordem decrescente: 
 
for (cont=2002; cont>=2; cont=cont-2) 
 
2. Assinale a opção que apresenta o trecho de código correto em Portugol para mostrar a soma dos números 
compreendidos entre 1 e 121 (inclusive): 
soma=0 
para (cont=1; cont<=121; cont++) 
{ 
soma = soma + cont 
{ 
mostre(soma) 
 
3.Avalie cada assertiva a seguir, referentes aos comandos WHILE e FOR, da Linguagem C e assinale a única 
correta: 
O comando WHILE repete até que a condição seja falsa. 
 
4. Considere fazer um programa em C que leia uma sequência de números inteiros terminada em 9 ou 99. 
Assinale a opção que mostra corretamente a expressão da condição do comando ENQUANTO para resolver o 
problema. 
 
while (num != 9 && num!=99) 
 
5.Avalie as afirmativas a seguir com relação aos comandos DO... WHILE, WHILE e FOR da Linguagem C e 
assinale a alternativa incorreta: 
O comando DO... WHILE repete a sequência de comandos até que a condição seja verdadeira. 
 
6.Considerando o trecho de código abaixo com o comando FOR, assinale o seu equivalente usando o comando 
DO... WHILE: 
 
for (cont=100; cont>=1; cont--) 
printf(“contador=”,cont); 
 
cont=100; 
do 
{ 
printf (“contador=”, cont); 
cont--; 
} 
while (cont>=1); 
 
TEMA 06 
 
1. Você deseja armazenar na variável MEDIA a média aritmética entre todos os elementos de um vetor com 20 
número reais chamado VET. O trecho de código cuja estrutura repetitiva permite que isso seja feito é: 
soma=0; 
for (ind=0;ind<20;ind++) 
{ soma=soma+VET[ind]; } 
media=soma/20; 
 
2. Considere um vetor de 15 elementos do tipo caracter, chamado VOGAIS. Você precisa que o programa que 
manipula esse vetor contabilize a quantidade de vogais “A” ou “E” que nele estão armazenadas e guardar o total 
na variável CONT. Assinale o trecho de código que executa essa contagem corretamente: 
cont=0; 
for (ind=0;ind<=14;ind++) 
{ 
if (vogais[ind]=='a' || vogais[ind]=='e’) 
cont=cont+1; 
} 
 
3.Considere uma matriz 10x30, na qual armazenamos as notas de 10 provas de 30 alunos de uma turma. Qual é 
o trecho de código correto para ler os dados, armazenar nessa matriz, bem como encontrar e mostrar a maior 
nota de cada prova? 
for (lin=0;lin<10;lin++) 
{ maior=0; 
for(col=0;col<30;col++) 
{ scanf (“%f ”,&mat[lin][col]; 
if (mat[lin][col]>maior) 
maior= mat[lin][col]; 
} 
printf (“%f maior da turma: “,maior) 
} 
 
4.Considere uma matriz 3x3 de inteiros, com seus elementos armazenados, de nome MAT. Sua necessidade é 
exibir os elementos de sua diagonal principal. Para tal, o trecho de código na linguagem C é: 
for (ind=0;ind<3;ind++) 
{ printf (“%f : “,mat[i][i]); } 
 
SIMULADO 
 
1. (COPS-UEL - Agente Universitário - Técnico de Informática - 2015) 
Em relação a tipos de dados, atribua V (verdadeiro) ou F (falso) às afirmativas a seguir: 
( ) char é um tipo simples. 
( ) double é um tipo estruturado. 
( ) float é um tipo simples. 
( ) int é um tipo simples. 
( ) void é um tipo estruturado. 
 
Assinale a alternativa que apresenta a sequência correta: 
V, F, V, V, F 
 
2. Podem ser considerados 2 componentes principais de um fluxograma 
Decisão e Conector; 
 
3. Perante a quantidade de operandos possíveis, os operadores podem ser classificados como: 
Unários, Binários e Ternários; 
 
4. O código abaixo foi escrito em linguagem C. Analise o seu comportamento e assinale a alternativa que 
representa os resultados para "Valor 1" e para "Valor 2", respectivamente, supondo que o usuário tenha digitado 
"67". 
 
 
 
#include 
 
int main() 
 
{ 
 
float n; 
 
printf("Digite um numero: "); 
 
scanf("%f",&n); 
 
printf("Valor 1: %f e Valor 2: %f", n-1, n+1); 
 
} 
 
 
66.000000 e 68.00000 
 
5. O trecho de código abaixo apresenta um estrutura lógica do tipo: 
 
 
if (num > 15) 
{ 
resul = num * 2; 
printf("Resultado: %d", resul); 
} 
else 
{ 
printf ("Numero menor que 15."); 
} 
 
SE ENTÃO SENÃO 
 
6. Observe a descrição da estruturabásica do comando switch case na linguagem C, exibida a seguir. 
switch (VARIAVEL) 
{ 
case : 
comando (s); 
case : 
comando (s); 
... 
default : 
comando (s); 
} 
 
 
 
Está correto afirmar que: 
 
Cada caso deve ser definido por uma constante escrita após a palavra case, seguida dos dois pontos 
 
7. Considere o seguinte enunciado: 
Escreva um trecho de codigo, em Portugol, que leia uma lista de números terminada em zero e mostre se o 
número é par ou ímpar. 
Assinale a alternativa que apresenta corretamente esse trecho de código em Portugol Studio, usando o 
comando com teste no início (pré-teste). 
 
Errado 
leia(num) 
enquanto (num!=0) 
{ se num%2==0 
 escreva ( numero e par¿) 
 senao 
 escreva (¿numero impar¿) 
 leia (num) 
} 
 
8. É preciso verificar se o conteúdo da variável NUM existe ou não em um vetor de 10 posições de inteiros, de 
nome VET. 
Assinale a alternativa que apresenta o trecho de código correto em linguagem C: 
 
int num,ind=0,achou=0,vet[10]; 
 
scanf ("%d",num); 
while (ind<10 && achou==0) 
{ 
 if (num==vet[ind]) 
 achou=1; 
 else ind++; 
} 
 
 
int num,ind=0,achou=0,vet[10]; 
 
scanf ("%d",num); 
while (ind<10 && achou==0) 
{ 
 if (num=vet[ind]) 
 achou=1; 
 else ind++; 
} 
 
9. No que se refere aos conceitos de vetores e sua implementação na linguagem C, avalie as assertivas. 
I. Um vetor armazena os dados na memória ao mesmo tempo 
II. Um vetor de inteiros de 20 posições é equivalente a usar 20 variáveis do tipo inteiro 
III. O vetor é um estrutura de dados heterogênea. 
IV. Em C, a primeira posição de um vetor é a posição zero. 
Com base em sua análise, assinale a UNICA opção que apresenta APENAS as respostas corretas. 
 
I, II e IV apenas 
 
10. Na codificação de um programa na linguagem C, é necessária a declaração de uma matriz bidimensional 
para armazenar as notas de 3 disciplinas de uma turma com 50 alunos. 
 
O algoritmo considera que os dados estarão organizados na matriz, de modo que cada linha represente a nota 
de uma disciplina dos 50 alunos 
 
Marque a alternativa que apresenta, de forma correta, a declaração dessa matriz, chamada de notasAlunos: 
 
float matalunos [50][3];

Continue navegando