Baixe o app para aproveitar ainda mais
Leia os materiais offline, sem usar a internet. Além de vários outros recursos!
Prévia do material em texto
Exercícios - Questões Objetivas Apresentação 02 - Tipos de Dados 1. O nome de uma variável é criado por um programador devendo seguir algumas regras, são listas de nomes válidos, EXCETO: a) Nota1, Nota2, Nota3 b) Aluno, aluno, alunos c) tres, treze, 3_tres d) Tipo_camisa, T_tenis, tamanho e) Media, aprovado, reprovado 2. Sendo A=5, B=3 e C=7, análise as operações a seguir e marque a opção correta. (V é verdadeiro e F é falso) 1. A+B = C 2. B+C < A 3. C < A*B 4. B+C = 2*A 5. C div B > A a) F – F – V – V – F b) V – F – V – V – F c) F – F – V – V – V d) F – V – V – V – F e) F – V – F – V – F 3. Observe as operações e assinale qual será o valor do real X e do inteiro Y. X 3*2 + 5/2 – potencia(3, 2) + raiz(4); Y raiz(9) – (5 div 2) + (3 mod 1); a) X = 2.5 e Y = 5 b) X = 1.5 e Y = 3 c) X = 2 e Y = 1.5 d) X = 1.5 e Y = 1 e) X = 1 e Y = 3 4. Selecione a opção que mostre quais são os conectivos lógicos que devem ser colocados nas expressões a seguir para que TODAS sejam verdadeiras. Considere A=2, B=3, C=6 e D=10. 1. ( A+C < D-A)F _ V(D-A = A+C) 2. (B*A = C)V _ V((D div A) < C) 3. ((D mod A) = (C mod B)) V _V ((B mod A) ≠ (C mod A)) 4. ((C div A) = B)V _ F(B*C ≤ D+A*B) 5. ((D div A)+B) > C+A) _ ((D mod C) ≥ (A*A)) a) ou – e – xou – ou – xou b) ou – xou – ou – xou – e c) e – e – ou – xou – ou d) xou – e – ou – xou – ou e) ou – xou – e – xou – ou 5. Análise a expressão e marque qual será o valor de D. A 6; B 4; C 12; D (C div A) + B – (A mod B)*(A div B); a) D = 7 b) D = 13 c) D = 4 d) D = 22 e) D = 3 6. Qual será o valor de D na expressão a seguir. A 5; B 3; C 15; D (C mod A) + potencia((A-B), 2) – raiz(C + 2*A) + B; a) D = 12 b) D = 17 c) D = 6 d) D = 13 e) D = 2 7. Como serão as saídas do algoritmo em C, respectivamente? #include <stdio.h> int main() { printf(“Valor: %f”,13.75649); printf(“Valor: %.3f”,12.34598); printf(“Valor: %.1f”,13.75649); return 0; } a) 13.75649, 12.34598 e 13.75649 b) 13.75, 12.348 e 13 c) 13.7564, 12.348 e 13.75649 d) 13.75649, 12.345 e 13.7 e) 13.75649, 12.346 e 13.8 8. Selecione o fragmento de código CORRETO para a leitura de um valor. a) int num; printf (“Digite o valor do numero: ”); scanf (“%c”, &num); b) int num; printf (“Digite o valor do numero: ”); scanf (“%d”, num); c) float num; printf (“Digite o valor do numero: ”); scanf (“%d”, &num); d) int num; printf (“Digite o valor do numero: ”); scanf (“%d”, & int num); e) int num; printf (“Digite o valor do numero: ”); scanf (“%d”, &num); 9. Observe o algoritmo a seguir e indique qual será a saída: #include <stdio.h> int main() { printf(“Nome: Joao Paulo Silva\n”); printf(“Idade: 23 anos\n”); printf(“\nDias em que trabalhou em Janeiro:\n”); printf(“1\t2\t5\t7\t13\t22\t27”); return 0; } a) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 b) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 c) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 d) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 - 2 - 5 - 7 - 13 - 22 - 27 e) Nome: Joao Paulo Silva - Idade: 23 anos Dias em que trabalhou em Janeiro: 1, 2, 5, 7, 13, 22, 27 10. Observe o algoritmo em C a seguir e marque a alternativa que representa a resposta da seguinte pergunta: “O que será impresso?”. #include <stdio.h> #include <stdlib.h> int main() { float num; num = 8.456; //printf("Valor de num e: %f\n", num); printf("Valor de num e: %d\n", num); //printf("Valor de num e: %c\n", num); return 0; } a) Valor de num e: -583756237 (apenas lixo de memória, um número aleatório qualquer) b) Valor de num e: 8.456000 Valor de num e: 8 Valor de num e: W c) Valor de num e: 8.456 Valor de num e: 8.4 Valor de num e: x d) Valor de num e: 8.456 e) Valor de num e: 8 Apresentação 03 - Estruturas Condicionais 1. Analise o algoritmo e marque qual a sua saída se as entradas forem 62 e 32, respectivamente. principal { inteiro A, B; leia(B, A); se (A > B) B A + B; se (A < B) A (B div 2); imprima (A); } a) 62 b) 32 c) 31 d) 34 e) 93 2. Escolha a condição que gera a saída 13. principal { inteiro num1, num2; num1 13; num2 22; se (????????) imprima (num2); senão imprima (num1); } a) (num1 > num2) ou (num2 < 20) b) (num2 > num1) e (num2 < 25) c) (num1 > num2) ou (num1 < 20) d) (num1 = num2) ou (num2 < 25) e) (num1 < num2) e (num2 < 20) 3. Quais serão as saídas do algoritmo a seguir se primeiro as entradas forem, respectivamente, 2, 3 e 5, e então o algoritmo será executado novamente, mas com as entradas 10, 2 e 3. principal { inteiro X, Y, Z; leia(X, Y, Z); se ((X>Y) e (Y*Z < X) ) imprima (Z*Y); senão imprima (X + Z*Y); } a) Primeira saída é 25 e a segunda é 22. b) Primeira saída é 17 e a segunda é 6. c) Primeira saída é 13 e a segunda é 18. d) Primeira saída é 17 e a segunda é 16. e) Primeira saída é 6 e a segunda é 17. 4. Quais serão as entradas do algoritmo a seguir se a saída for 2. principal { inteiro A, B, C; leia (C, B, A); se ((C>B) ou (A*B > C)) imprima (A); senão imprima (B+C); } a) A=3, B=2, C=13 b) A=1, B=11, C=1 c) A=5, B=4, C=17 d) A=7, B=2, C=9 e) A=2, B=3, C=5 5. Qual será a saída do algoritmo se as entradas forem, respectivamente, 4, 7 e 4. principal { inteiro A, B, C; leia (A, B, C); se ((A ≠ 0) e (B ≠ 0) e (C ≠ 0)) { se ((A = B) e (B = C)) imprima (A + C); senão { se ((A = B) ou (A = C) ou (C = B)) imprima (A + B); senão imprima (B - C); } } senão imprima (A + B + C); } a) 3 b) 4 c) 7 d) 11 e) 15 6. O algoritmo a seguir representa algumas operações de uma calculadora. Primeiro, considerando como entrada “3”, o que seria impresso e quantas entradas a mais seriam necessárias se, ao invés de imprimir fosse executado o que está escrito; segundo, considere “5” como entrada. principal { inteiro x; imprima(“Digite o número: “); leia(x); escolha (x) { caso 1: imprima (“Operação de Soma”); caso 2: imprima (“Operação de Multiplicação”); caso 3: imprima (“Operação de Raiz Quadrada”); caso 4: imprima (“Operação de Elevar ao Quadrado”); senão: imprima(“Nenhuma Operação”); } } a) Operação de Raiz Quadrada, uma entrada a mais. Nenhuma Operação, nenhuma entrada a mais. b) Operação de Raiz Quadrada, duas entradas a mais. Nenhuma Operação, nenhuma entrada a mais. c) Operação de Raiz Quadrada, nenhuma entrada a mais. Nenhuma Operação, uma entrada a mais. d) Nenhuma Operação, uma entrada a mais. Operação de Elevar ao Quadrado, nenhuma entrada a mais. e) Operação de Multiplicar, duas entradas a mais. Nenhuma Operação, duas entradas a mais. 7. Observe o algoritmoem C a seguir, qual deve ser sua condição de teste do “if” e qual deve ser a variável (ou expressão) do “printf”, para ocorrer a saída “Aprovado com 60.00”, para as entradas “60” e “60”, e o algoritmo continue funcionando para quaisquer valores das variáveis de entrada. #include <stdio.h> #include <stdlib.h> int main() { float nota1, nota2; printf ("Digite a primeira nota: "); scanf ("%f", ¬a1); printf ("Digite a segunda nota: "); scanf ("%f", ¬a2); if (????????????????) printf ("Aprovado com %.2f",??????????????); else printf ("Reprovado com %.2f", (?????????????); return 0; } a) (nota1+nota2 >= 60) (nota1+nota2) b) ((nota1+nota2)/2 >= 60) nota1 c) ((nota1+nota2)/2 > 60) ((nota1+nota2)/2) d) ((nota1+nota2)/2 >= 60) ((nota1+nota2)/2) e) ((nota1+nota2)/2 >= 60) nota2 8. O algoritmo em C a seguir contém um problema, para quais entradas, respectivamente, esse problema ocorrerá? #include <stdio.h> #include <stdlib.h> int main() { float num1, num2; printf("Digite dois numeros: "); scanf("%f %f", &num2, &num1); printf("\nSoma = %f", num01 + num02); printf("\nSubtracao = %f", num01 - num02); printf("\nMultiplicacao = %f", num01*num02); if(num02 == 0) printf("\nDivisao = %f", num01/num02); else printf("\nNao e possivel divisao por zero!"); return 0; } a) 13 e 22 b) 7.34 e 29.4456 c) 0 e 14.3 d) 23.999 e 0 e) 2 e 13 9. Você é o gerente de uma loja, um cliente pergunta qual a origem de um determinado produto, por uma tabela seu código é 56, qual é sua resposta ao cliente? #include <stdio.h> #include <stdlib.h> int main() { int cod; printf ("Digite o codigo do produto: "); scanf ("%d", &cod); if (cod < 1) { printf ("Nao existe esse codigo!"); } else { if (cod >= 1 && cod <= 20) { printf ("Europa"); } else { if (cod >= 21 && cod <= 40) { printf ("Asia"); } else { if (cod >= 41 && cod <= 60) { printf ("America"); } else { if (cod >= 61 && cod <= 80) { printf ("Africa"); } else { printf ("Paraguai"); } } } } } return 0; } a) Este produto é do Paraguai. b) Este produto é da África. c) Este produto é da Ásia. d) Este produto é da Europa. e) Este produto é do America 10. Em uma determinada escola, a notas dos alunos é data como conceito. Qual a saída do algoritmo em C a seguir se a nota de um aluno for 100? E se for 8.7? #include <stdio.h> #include <stdlib.h> int main() { float nota; printf ("Informe o valor da nota\n"); scanf ("%f", ¬a); if (nota<0 || nota>10) printf ("Nota invalida\n"); else if (nota>=9 && nota<=10) printf ("Conceito A\n"); else if (nota<9 || nota>=7) printf ("Conceito B\n"); else if (nota<7 || nota>=5) printf ("Conceito C\n"); else printf ("Conceito D\n"); return 0; } a) Nota 100: Conceito A Nota 8.7: Conceito B b) Nota 100: Nota invalida Nota 8.7: Conceito B c) Nota 100: Conceito A Nota 8.7: Conceito C d) Nota 100: Nota invalida Nota 8.7: Conceito C e) Nota 100: Nota invalida Nota 8.7: Nota invalida Apresentação 04 - Comandos de Repetição 1. Considere a lista de entradas. Entradas: 2, 9, 47, -7, -11, -49, 47, 30, 100, -100, -120, -47, 14, 114, 13. Quantos números serão impressos? principal { inteiro A; leia(A); enquanto (A ≤ 100) faça { se (A > -10) imprima (A); leia(A); } } a) 8 números b) 9 números c) 7 números d) 15 números e) 6 números (Observe que nem todos os números precisam ser lidos.) 2. Considere a lista de entradas. Entradas: 2, 9, 47, -7, -11, -49, 47, 30, 100, -100, -120, -47, 14, 114, 13. Quantos números serão impressos? principal { inteiro A; faça { leia(A); se (A > -10) imprima (A); }enquanto (A ≤ 100); } a) 8 números b) 9 números c) 7 números d) 15 números e) 6 números (Observe que nem todos os números precisam ser lidos.) 3. Considerando as entradas 3 e 8, marque a alternativa que representa a saída do algoritmo a seguir. principal { inteiro i, n1, n2, s; leia (n1, n2); s 0; para ( i n1; i ≤ n2; i i + 1) faça { s s + 2; } imprima (“Resultado: “ i); } a) Resultado: 7 b) Resultado: 8 c) Resultado: 6 d) Resultado: 9 e) Resultado: 12 4. Marque a opção com o fragmento de algoritmo que representa CORRETAMENTE um comando de repetição com variável de controle. a) se (a > b) imprima (a); senão imprima (b); b) enquanto (a ≠ 0) faça { imprima (a); leia (a); } c) para (i = 1; i < 100; i++) faça { imprima (i); } d) faça { leia (a); imprima (a); }enquanto (a ≠ 0); e) para (i 1; i < 100; i i + 1) faça { imprima (i); } 5. Todos os fragmentos de código a seguir imprimem a sequencia de números inteiros PARES de 0 a 100, EXCETO: a) for (i=0; i <= 100; i++) { if (i%2 == 0) printf ("%d ", i); } b) a = 0; i = 0; while (i <= 100) { a = i; if (a%2 == 0) printf ("%d ", a); i++; } c) a = 0; do { a = a+2; printf ("%d ", a); }while (a <= 100); d) for (i=0; i <= 100; i=i+2) { printf ("%d ", i); } e) a = 0; printf ("Primeiro:\n"); while (a <= 100) { if (a%2 == 0) printf ("%d ", a); a++; } 6. O algoritmo a seguir tem como objetivo calcular a média dos números lidos, porém, isso não acontece corretamente. Indique a linha em que se encontra o ERRO do código: 1. #include <stdio.h> 2. #include <stdlib.h> 3. 4. int main() 5. { 6. float media, soma, num; 7. int i; 8. soma = 0; 9. for (i=0; i < 10; i++) 10. { 11. scanf ("%f", &num); 12. soma = soma + num; 13. } 14. media = soma/2; 15. printf ("Media dos numeros lidos e': %.2f", media); 16. return 0; 17. } a) Linha 2 b) Linha 14 c) Linha 15 d) Linha 9 e) Linha 6 7. Qual será a saída do algoritmo a seguir se suas entradas forem, num primeiro momento, 1 e 9, e num segundo, 5 e 3: #include <stdio.h> int main() { int i, val1, val2; scanf("%d %d", &val1, &val2); if(val1 > val2) printf ("Primeiro valor deve ser menor que o segundo."); else { for(i = val1; i <= val2; i++) { if(i%2) printf ("%d, ", i); } } return 0; } a) 1, 3, 5, 7, 9, Primeiro valor deve ser menor que o segundo. b) 1, 3, 5, 7, 9 Primeiro valor deve ser menor que o segundo. c) 1, 3, 5, 7, 9, 3, 5, d) 2, 4, 6, 8, Primeiro valordeve ser menor que o segundo. e) 1, 3, 5, 7, 9, 4, 8. Analise o algoritmo em C a seguir e indique qual será a saída, considerando 5 como entrada. #include <stdio.h> #include <stdlib.h> int main() { int n,i; float S=1.0; do { printf("Informe n positivo: "); scanf("%d",&n); }while(n<=0); if(n==1) printf("\nS = 1 \n"); else { for(i=2; i<=n; i++) { S+=(float)1/i; } printf("\nS = %.2f \n",S); } return 0; } a) S = 3.14 b) S = 12 c) S = 2 d) S = 2.28 e) S = 3 9. Quais as saídas do algoritmo a seguir se a entrada for 3, e depois 5? #include <stdio.h> #include <stdlib.h> int main() { int N, cont, aux=1; float E=1; do{ printf ("Digite um numero inteiro positivo :"); scanf ("%d",&N); }while(N<=0); for(cont=1;cont<=N;cont++) { aux *= cont; E += aux; } printf ("E = %.2f",E); return 0; } a) 3.00 e 5.00 b) 10.00 e 154.00 c) 9.00 e 153.00 d) 11.00 e 155.00 e) 14.00 e 41.00 10. Observe atentamente o algoritmo a seguir e responda: qual a quantidade de números que serão lidos? #include <stdio.h> #include <stdlib.h> int main() { int Num = 0; while (Num != 0) { printf ("Digite um numero inteiro: "); scanf ("%d", &Num); } return 0; } a) A quantidade de números que forem digitados. b) A quantidade de números que forem digitados até ser digitado 0 (zero). c) A quantidade de números que forem digitados até ser digitado um número negativo. d) A quantidade de números que forem digitados até ser digitado um número que não é inteiro. e) Nenhum número. Gabarito Apresentação 02 - Tipos de Dados: 1. C 2. A 3. D 4. D 5. C 6. E 7. D 8. E 9. B 10. A Apresentação 03 - Estruturas Condicionais: 1. C 2. A 3. B 4. E 5. D 6. A 7. D 8. C 9. E 10. B Apresentação 04 - Comandos de Repetição: 1. A 2. B 3. D 4. E 5. C 6. B 7. A 8. D 9. B 10. E
Compartilhar