Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questão 1 : Dado o programa em C a seguir, e com base no que você estudou sobre estruturas condicionais simples e compostas na unidade 23 e na unidade 24, assinale a alternativa correta que mostra quais dados são escritos na tela tanto pelo programa quanto pelo usuário quando usamos como dados de entrada 10, '/' e 3 respectivamente para as variáveis x, operador e y: Calculadora simples 1. #include<stdio.h> 2. #include <stdlib.h> 3. 4. int main(void) 5. { 6. float x,y; 7. char operador; 8. scanf("%f%c%f",&x,&operador,&y); 9. if(operador=='*') 10. printf("%f",x*y); 11. else if(operador=='/') 12. printf("%f",x / y); 13. else 14. printf("Operador invalido."); 15. system("pause"); 16. return 0;17. } Acertou! A resposta correta é a opção B Justificativa: Resposta: B. Na linha 12 é informado o valor da divisão de 10 por 3. Como os valores são guardados em variáveis do tipo float, o resultado em C é impresso como 3.333333. A 10 / 3 3.333332 Pressione qualquer tecla para continuar. . . B 10 / 3 3.333333 Pressione qualquer tecla para continuar. . . C 10 / 3 3 Pressione qualquer tecla para continuar. . . D 10 / 3 0.000000 Pressione qualquer tecla para continuar. . . Questão 2 : Dado o programa a seguir e com base no que você estudou sobre comandos de entrada e de saída de dados, na unidade 21, assinale a alternativa correta que mostra o que é informado na linha 11 quando o usuário usa como dado de entrada o número 67: Programa em C com funcionalidade desconhecida 1. #include <stdio.h> 2. #include <stdlib.h> 3. 4. int main(void) 5. { 6. int a, b, c; 7. float d; 8. printf("Digite um numero inteiro de 2 digitos.\n"); 9. scanf("%d", &a); 10. b = a / 10; 11. c = a % 10; 12. a = c * 10 + b; 13. d = a / 2.0; 14. printf("Resultado: %f", d); 15. system("pause"); 16. return 0;17. } Acertou! A resposta correta é a opção B Justificativa: Resposta: B. O programa acima inverte os dígitos de um número, transformando 67 em 76, e em seguida divide o número por 2.0, gerando um número real de valor 38. Por ser do tipo float e usarmos o símbolo %f no comando printf, o número é impresso no formato 38.000000. A Resultado: 76.000000 B Resultado: 38.000000 C Resultado: 38 D Resultado: 76 Questão 3 : Dado o programa em C a seguir, semelhante aos que você viu na unidade 37, assinale a alternativa correta que indica o número que é impresso na linha 17 quando usamos como dado de entrada a string “abc123”: String em caixa alta 1. #include 2. #include 3. 4. int main(void) 5. { 6. char texto[50]; 7. int i, j; 8. printf(Digite uma sequencia qualquer de caracteres.\n); 9. scanf(%s, texto); 10. j = 0; 11. for (i = 0; i < 50; i++){ 12. if (texto[i] == \0) 13. break; 14. if (texto[i] >= 48&& texto[i] 15. j = j + 1; 16. } 17. printf(%d, j); 18. system(pause); 19. return 0;20. } Acertou! A resposta correta é a opção C Justificativa: Resposta: C. O programa conta quantos caracteres da string são números, correspondendo a 3. A 0 B 1 C 3 D 6 Questão 4 : O algoritmo a seguir utiliza operadores relacionais que você estudou na unidade 10. Assinale a alternativa correta que apresenta o valor informado no fim da execução do algoritmo se o usuário usar como dados de entrada os números 10 e 5, respectivamente, para as variáveis x e y: Algoritmo 4 – Comparador 1. Inteiro x; 2. Inteiro y; 3. x ← Receba um número inteiro; 4. y ← Receba um número inteiro; 5. Se (x>y) Então 6. Informe -1; 7. Senão 8. Se (y>x) Então 9. Informe 1; 10. Senão 11. Informe 0; 12. FimSe 13. FimSe Acertou! A resposta correta é a opção A Justificativa: Resposta: A. Se x for igual a 10, e y igual a 5, a execução entra na linha 6, onde é informado o valor -1. Seria informado 0 se x e y fossem iguais e 1 se y fosse maior que x. Nunca é informado 5 ao usuário. A -1 B 0 C 1 D 5 Questão 5 : Sobre as diferentes linguagens de programação que você viu na unidade 13, assinale a alternativa correta: Acertou! A resposta correta é a opção D Justificativa: Resposta: D. A opção A está errada por ser mais difícil programar em linguagens de máquina. A opção B está errada porque a semântica de linguagens de programação pode variar bastante em relação a das linguagens assembly. A opção C consiste em uma instrução em linguagem de máquina. A opção D está correta de acordo com o texto da unidade 13. A É mais fácil programar em linguagens de máquina do que em linguagens como C e Java. B Linguagens assembly possuem semântica igual a das linguagens de programação mais usadas. C O comando a seguir é um comando escrito na linguagem assembly da arquitetura MIPS32: 00000001001010100100000000100000. D As primeiras linguagens de programação a surgir foram as linguagens de máquina, e depois surgiram as linguagens de programação mais semelhantes à linguagem natural. 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. Acertou! 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 : Com base no que abordamos sobre a linguagem de programação C na unidade 17 e na unidade 18, assinale a afirmação correta a respeito da linguagem C: Acertou! A resposta correta é a opção C Justificativa: Resposta: C. A alternativa a está incorreta, pois a declaração de variáveis em C não fica separada do resto do programa. A alternativa b está incorreta porque não existem tipos de dados de strings. E o comando scanf é usado na, verdade, para a entrada de dados, e não a saída, o que torna a alternativa d incorreta. Por outro lado, existem diversos tipos de dados numéricos inteiros, como mostra a segunda tabela da unidade 17. A A declaração das variáveis em C deve ficar separada do resto do programa, num espaço chamado Variáveis. B Embora não exista um tipo de dado booleano em C, existem os tipos de dados numéricos e de strings. C Existem tipos diferentes de dados numéricos inteiros, cada um com um intervalo de representação diferente. D O comando scanf é usado para informar dados ao usuário. Questão 8 : Com base no que você estudou sobre programação em linguagem C, nas unidades 18 e 19, assinale a alternativa correta que apresenta a funcionalidade do seguinte programa: Outro exemplo de programa em C 1. #include<stdio.h> 2. #include <stdlib.h> 3. 4. int main(void) 5. { 6. float num; 7. printf("Digite um numero real.\n"); 8. scanf("%f", &num); 9. num = num / 2; 10. printf("%f \n", num); 11. num = num * 4; 12. printf("%f \n", num); 13. system("pause"); 14. return 0;15. } Acertou! A resposta correta é a opção C Justificativa: Resposta: C. Ao dividirmos o número por 2, encontramos sua metade. Ao multiplicarmos a metade por 4, encontramos seu dobro. A Calcular a área de um triângulo. B Calcular o antecessor e o sucessor de um número. C Calcular a metade e o dobro de um número. D Calcular adiagonal de um quadrado qualquer. Questão 9 : Dado o algoritmo a seguir, que utiliza expressões que vimos nas unidades 8 e 9, assinale a alternativa correta que apresenta o valor que é informado para o usuário na linha 9: Algoritmo 3 – Expressões lógicas e aritméticas 1. Inteiro x; 2. Inteiro y; 3. x ← 1; 4. y ← 2; 5. x ← x + y; 6. y ← x - y; 7. x ← x - y; 8. Se (x = 2 OU y = 2) Então 9. Informe y; 10. FimSe. Acertou! A resposta correta é a opção B Justificativa: Resposta: B. Os cálculos realizados resultam sempre em x valendo 2 e y valendo 1. Isso faz com que a expressão lógica da linha 8 tenha sempre resultado verdadeiro. Na linha 9, o valor de y, que é 1, é informado ao usuário. A 2 B 1 C 0 D Nada. Questão 10 : Sobre os tipos de dados estudados na unidade 6, assinale a alternativa correta: Acertou! A resposta correta é a opção B Justificativa: Resposta: B. As alternativas A, C e D podem ser encontradas no texto da unidade 6. A alternativa B está correta porque 5.0 é um número real e “5.0” é uma string. A Verdadeiro e falso não são os únicos valores possíveis para dados booleanos. B Escrever 5.0 não é o mesmo que escrever “5.0”. C Escrever 5. não é o mesmo que escrever 5.0. D Strings, também chamadas de cadeias de caracteres, não podem conter números.
Compartilhar