Você está na página 1de 8

Programação I

Questão 1 :
Na unidade 17 e na unidade18, você viu algumas funcionalidades da linguagem C.
Assinale a alternativa correta que mostra a funcionalidade do seguinte programa:
Outro exemplo de programa em C
1.   #include
2.   #include 
3.
4.   int main(void)
5.   {
6.         float lado;
7.         printf(Digite um numero real.\n);
8.         scanf(%f, &lado);
9.         lado = lado * 4;
10.       printf(%f \n, lado);
11.       system(pause);
12.       return 0;13. }
A resposta correta é a opção C
Justificativa:
Resposta: C.
Ao multiplicarmos o lado de um quadrado por 4, estamos calculando
seu perímetro.
 
A A área de um quadrado qualquer.
 
B A área de um círculo qualquer.

C O perímetro de um quadrado qualquer.

D A diagonal de um quadrado qualquer.

Questão 2 :
A respeito de pseudocódigos, conforme estudamos na unidade 14, assinale a
alternativa correta:
 
A resposta correta é a opção D
Justificativa:
Resposta: D.
No espaço Variáveis não é informado o valor inicial. O símbolo ← é
usado em atribuições, não em declarações. O comando da opção C
não existe em pseudocódigo.
 
A No espaço chamado Variáveis, é onde os programadores informam o tipo, o nome e o valor inicial das
variáveis declaradas.
 
B Usamos o símbolo ← quando declaramos uma variável.

C Usamos o comando a ← Inteiro para mudar o tipo da variável a para inteiro.

D Todos os comandos do programa, à exceção da declaração das variáveis globais, devem ficar entre os cam
Início e Fim.

Questão 3 :
Na unidade 31, você aprendeu que podemos controlar a quantidade de vezes que o
bloco de instruções será executado. Assinale a alternativa correta que mostra
quantas vezes é executado o bloco de instruções da estrutura de repetição do
programa em C a seguir:
 
Programa em C simples com uma estrutura de repetição com controle
1. #include<stdio.h>
2. #include <stdlib.h>
3.
4. int main(void)
5. {
6.         int i;
7.         for (i = 1; i < 10; i++){
8.                 printf("%d \n", i);
9.         }
10.         system("pause");
11.         return 0;12. }
A resposta correta é a opção C
Justificativa:
Resposta: C.
Iniciando i em 1 e executando enquanto i for menor que 10 faz com
que a estrutura seja executada 9 vezes.
 
A 0
 
B 1

C 9

D 10

Questão 4 :
Da unidade 28 à 31, você estudou sobre as estruturas de repetição. Dado o programa
em C a seguir, assinale a alternativa correta que mostra quais dados são escritos na
tela tanto pelo programa quanto pelo usuário quando usamos como dado de
entrada o número 20:
 
Programa em C com estrutura de repetição
1. #include <stdio.h>
2. #include <stdlib.h>
3.
4. int main(void)
5. {
6.         int numero;
7.         int i;
8.         scanf("%d", &numero);
9.         for (i = 1; i <= numero; i++){
10.                 printf("%d", i);
11.         }
12.         printf("\n");
13.         system("pause");
14.         return 0;15. }
A resposta correta é a opção A
Justificativa:
Resposta: A.
Iniciando i em 1 e executando enquanto i for menor ou igual a 20 faz
com que a estrutura seja executada 20 vezes, imprimindo os números
de 1 a 20 em sequência.
 
A 20
1234567891011121314151617181920
Pressione qualquer tecla para continuar. . .
 
B 20
012345678910111213141516171819
Pressione qualquer tecla para continuar. . .
C 20
01234567891011121314151617181920
Pressione qualquer tecla para continuar. . .
D 20
12345678910111213141516171819
Pressione qualquer tecla para continuar. . .
Questão 5 :
A partir do que você estudou sobre a estrutura de repetição com controle, na
unidade 31, considere o programa em C a seguir:
 
Estrutura de repetição com controle
1. #include <stdio.h>
2. #include <stdlib.h>
3.
4. int main(void)
5. {
6.         int numero;
7.         int i, j;
8.         scanf("%d", &numero);
9.         for (i = 1; i <= numero; i++){
10.                 <complete com uma instrução>
11.                         printf("%d \n", i + j);
12.                 }
13.         }
14.         system("pause");
15.         return 0;16. }
Considere, também, os dados de saída a seguir, impressos quando usamos como
dado de entrada o número 3.
 
1
2
3
2
3
4
3
4
5
Pressione qualquer tecla para continuar. . .
 
Assinale a alternativa correta que apresenta a instrução que precisa ser inserida na
linha 10 desse programa para que os dados de saída visualizados anteriormente
sejam gerados:

 
A resposta correta é a opção A
Justificativa:
Resposta: A.
Na primeira execução das estruturas de repetição, a soma i + j resulta
em 1. Como i é 1, logo j inicia-se em 0. Como a estrutura de repetição
interna é executada 3 vezes a cada execução da estrutura externa,
essa estrutura deve executar enquanto j for menor que numero.
 
A for (j = 0; j < numero; j++){
 
B for (j = 0; j

C for (j = 1; j

D for (j = i; j

Questão 6 :
Na unidade 8, você estudou sobre as expressões aritméticas. Dado o algoritmo a
seguir, assinale a alternativa correta que mostra o valor informado para o usuário na
linha 13:
 
Algoritmo 2 – Expressões aritméticas
1. Inteiro x;
2. Inteiro y;
3. Inteiro z;
4. x←2;
5. y←Receba um número inteiro;
6. z ← 3;
7. x ← x ^ z;
8. z ← z - 3;
9. y ← y * z;
10. z ← y + 1;
11. y ← z + 1;
12. x ← x / y;
13. Informe o valor de x.
A resposta correta é a opção B
Justificativa:
Resposta: B.
Os cálculos realizados resultam sempre em x valendo 4; x começa com
valor 2 e na linha 7 passa a valer 8. Na linha 10, ambos y e z valem 0.
Então z passa a ser 1, e em seguida y passa a ser 2. Na linha 12, então,
calculamos 8 / 2, que sempre resulta em 4.
 
A 2

B 4

C 8

D É impossível saber.

Questão 7 :
Na unidade 21, você estudou sobre os comandos de entrada e saída e sua utilidade
na execução de programas. Ao executarmos o programa a seguir, assinale a
alternativa correta que indica quais dados são escritos na tela tanto pelo programa
quanto pelo usuário quando usamos como dado de entrada o número 1000000:
 
Programa em C com comandos de entrada e saída de dados
1. #include <stdio.h>
2. #include <stdlib.h>
3.
4. int main(void){
5.         float numero;
6.         printf("abcdef");
7.         scanf("%f", &numero);
8.         printf("abc%g", numero);
9.         numero = numero + numero;
10.         printf("def%g", numero);
11.         printf("\n");
12.         system("pause");
13.         return 0;14. }
A resposta correta é a opção D
Justificativa:
Resposta: D.
Quando usamos os símbolos %g, como nas linhas 8 e 10 do programa,
imprimimos os números em notação científica, como na opção D.
 
A abcdef
1000000
abc
1000000
def
2000000
Pressione qualquer tecla para continuar. . .
 
B abcdef
1000000
abc1000000
def2000000
Pressione qualquer tecla para continuar. . .
C abcdef1000000
abc1000000def2000000
Pressione qualquer tecla para continuar. . .
D abcdef1000000
abc1e+006def2e+006
Pressione qualquer tecla para continuar. . .
Questão 8 :
Dado o programa em C a seguir, que utiliza estruturas condicionais compostas como
você estudou na unidade 24, assinale a alternativa correta que apresenta os dados
escritos na tela tanto pelo programa quanto pelo usuário quando usamos como
dados de entrada os números 20, 10 e 0, respectivamente, para as variáveis a, b e c:
 
Programa em C com estrutura condicional composta
1. #include <stdio.h>
2. #include <stdlib.h>
3.
4. int main(void)
5. {
6.         int a, b, c;
7.         printf("Digite tres numeros inteiros\n");
8.         scanf("%d %d %d", &a, &b, &c);
9.         if (c == 0 && b < a){
10.                 c = a + b;
11.                 printf("%d \n", c);
12.         } else {
13.                 c = a - b;
14.                 printf("%d \n", c);
15.         }
16.         printf("%d \n", c);
17.         system("pause");
18.         return 0;19. }
A resposta correta é a opção B
Justificativa:
Resposta: B.
Apenas as instruções printf das linhas 7, 11 e 16 são executadas. c vale
a + b, que é igual a 30. Como o valor de c é mostrado duas vezes,
mostra-se o número 30 duas vezes.
 
A Digite tres numeros inteiros
20 10 0
30
Pressione qualquer tecla para continuar. . .
B Digite tres numeros inteiros
20 10 0
30
30
Pressione qualquer tecla para continuar. . .
C Digite tres numeros inteiros
20 10 0
20
10
Pressione qualquer tecla para continuar. . .
D Digite tres numeros inteiros
20 10 0
30
10
10
Pressione qualquer tecla para continuar. . .
Questão 9 :
A respeito do processo visto na unidade 4 de identificar e solucionar um problema
por meio de algoritmos, assinale qual das alternativas a seguir está correta:

 
A resposta correta é a opção C
Justificativa:
Resposta: C.
Nem todo problema possui solução. Mudanças precisam ser feitas
num algoritmo para ele calcular o perímetro de qualquer polígono, já
que o problema a ser resolvido é um pouco mais complexo. E cada
pessoa pode criar uma sequência finita de passos diferente para
chegar a uma mesma solução de um mesmo problema.
 
A Todo problema possui pelo menos uma solução.
 
B Se um algoritmo é capaz de calcular o perímetro de um polígono específico, ele é capaz de calcular o
perímetro de qualquer polígono.

C Identificar corretamente um problema é essencial para chegar à sua solução.

D Dados um problema e uma solução, todo algoritmo criado para chegar a essa solução do problema terá
exatamente os mesmos passos.

Questão 10 :
Na unidade 42, você estudou a definição de função e como declarar funções em C.
Dada a função a seguir, assinale a alternativa correta que descreve os dados de
entrada e o valor de retorno dessa função:
 
Função desconhecida
1. <retorno> nome(<dados de entrada>)
2. {
3.         float i;
4.         i = (a + b + c) / 3
5.         return i;6. }
A resposta correta é a opção C
Justificativa:
Resposta: C.
A função usa 3 valores desconhecidos, que devem ser dados de
entrada. Isso elimina as opções A e D. A opção B está incorreta, pois a
função retorna o valor de i, e i é uma variável de tipo float.
 
A int nome(int a)
 
B int nome(int a, int b, int c)

C float nome(float a, float b, float c)

D float nome(float abc)

Você também pode gostar