CURSO: SÉRIE: 1 a. e 2 a. DISCIPLINA: Algoritmos e Programação PROFESSOR: Paulo Cesar F. De Oliveira, BSc, PhD* RA: DATA: 02/06/2017 NOTA: NOME DO ALUNO: GABARITO, AVALIAÇÃO SIMULADA 1ª Questão: (0,6 pontos): O que vai aparecer na tela ao se executar o código abaixo? int a; a = 1; if(a == 0 a > 1) printf("ok"); if(a >= 0 && a <=2 ) printf( %i,a); printf("falha"); printf("fim"); a) Somente aparecerá "ok". b) Somente aparecerá "fim". c) Somente aparecerá 1. d) Aparecerá 1 e depois "fim". e) Somente aparecerá "falha". 2ª Questão: (0,6 pontos): O que vai aparecer na tela ao se executar o código abaixo? int a, b; a = 1; b = 2; if(a > b) printf("pato\n"); if(a==b) printf("marreco\n"); printf("ganso\n"); 1 de 6
printf("cisne\n"); a) Pato e Ganso b) Marreco e Ganso c) Ganso e Cisne d) Marreco e Cisne e) Pato e Marreco 3ª Questão (0,6 pontos): Observe o trecho de programa abaixo. Qual o valor de True para que seja mostrado na tela a mensagem Não perca tempo? a) 0 (zero). b) 1 (um). c) Qualquer valor. d) Qualquer valor menor que zero. e) True sempre é verdadeiro e, portanto, a frase solicitada na pergunta nunca será impressa. if (True) printf( O melhor da vida eh viver. ); printf( Nao perca tempo ); 4ª Questão (0,6 pontos): Observe o trecho de código a seguir. Qual valor deve ser fornecido pelo usuário para a variável num de forma que o programa imprima na tela a mensagem Numero Legalzinho.? a) Qualquer valor. b) São duas as possibilidades: -32768 (menor inteiro possível) ou 32767 (maior inteiro possível). c) Nenhum valor vai gerar o resultado pedido na pergunta. d) 0 (zero). e) 1 (um). printf ("Digite um numero: "); scanf("%d",&num); if (num == num) printf("numero Bacaninha."); printf("numero Legalzinho."); 2 de 6
5ª Questão: (0,6 pontos): Analise o programa abaixo. Depois indique a alternativa que mostra o que acontece caso o usuário digite o número 12. int main() float numero; printf("informe um numero: "); scanf("%f", &numero); if (numero > 12) printf("a metade desse numero eh %f", numero/2); system("pause"); a) Mostra na tela uma mensagem de erro. b) Mostra na tela: A metade desse numero e 6.0 c) O programa não é executado. d) Executa até o final sem mostrar nada. 6ª Questão: (0,6 pontos): O programa abaixo converte o valor da temperatura, digitado pelo usuário, de C (graus Celsius) para F (graus Fahrenheit). Porém, observe que está faltando uma linha (faixa cinza). Indique a resposta que mostra a linha de comando faltante: int main () float tc, tf; printf("informe temperatura em graus Celsius: "); tf = (9 * tc + 160)/5; printf("\n%f graus Celsius é igual a %f graus Farenheit: \n", tc, tf); system ( pause ); a) scanf("informe temperatura em graus Celsius: "); b) scanf("%f", &tc); c) printf("%f", &Celsius); d) printf("a temperatura eh %f", tc); 7ª Questão: (0,6 pontos): Na linguagem C/C++ existe um comando que efetua a estrutura de repetição ou laço de repetição (looping). Ele é o comando for. Suponha que você tem um programa que possui uma variável inteira de nome UniEsq e que ela deverá ser inicializada com o valor de 3654. A repetição deverá ir até o valor 32768 (inclusive) e a variável deverá ser incrementada em 416. Qual das alternativas abaixo representa tal comando? 3 de 6
a) for (UniEsq=3654; UniEsq<=32768; UniEsq=UniEsq+416); b) for (UniEsq=3654; UniEsq<32768; UniEsq=UniEsq+416); c) for (UniEsq=32768; UniEsq<3654; UniEsq=UniEsq+416); d) for (UniEsq=32768; UniEsq<=3654; UniEsq=UniEsq+416); e) for (UniEsq=416; UniEsq<32768; UniEsq=UniEsq+3654); 8ª Questão: (0,6 pontos): O que aparece na tela ao ser executado o código abaixo? a) Polanka b) gudun c) Beiçola d) zaroio e) Biroska int main() int zaroio, gudun; zaroio = 0; gudun = zaroio; if(zaroio >= 0) if(zaroio == gudun) printf("biroska"); if(gudun == 0) printf("polanka"); printf("beiçola"); system( pause ); 9ª Questão: (0,6 pontos): Existem em linguagem C dois tipos de estrutura de repetição. Uma é o while e a outra é a do-while. Existe uma diferença fundamental entre elas. Observe as alternativas abaixo e assinale a que explica mais adequadamente esta diferença: a) A estrutura de repetição do-while permite que o conjunto de comandos executados em seu laço seja maior e mais complexo que no caso do while. b) A estrutura de repetição do-while executa o conjunto de comandos em seu laço pelo menos uma vez, o que não é garantido no while. c) A estrutura de repetição while permite que o conjunto de comandos executados em seu laço seja maior e mais complexo que no caso do do-while. 4 de 6
d) A estrutura de repetição do-while é, de fato, uma estrutura de repetição, porém while não é. e) A estrutura de repetição while executa o conjunto de comandos em seu laço pelo menos uma vez, o que não é garantido no do-while. 10ª Questão: (0,6 pontos): Observe o código de programa a seguir e diga o que acontece quando você rodar o programa. int main() float a=0, b=1, c=2; int Escolha; printf("voce escolhe a cor %d, %d, ou %d?\n", a, b, c); scanf("%d", &Escolha); switch (Escolha) case a: printf("\nvoce escolheu a cor 0, que corresponde a Vermelho.\n"); break; case b: printf("\nvoce escolheu a cor 1, que corresponde a Amarelo.\n"); break; case c: printf("\nvoce escolheu a cor 2, que corresponde a Azul.\n"); break; default: printf("\nvoce escolheu uma cor invalida.\n"); system ("PAUSE"); a) O programa vai para a opção default e diz que foi escolhida uma cor inválida. b) a, b, e c são variáveis do tipo float. c) 2 é o número correspondente à cor vermelha. d) O programa não roda devido a um erro de compilação. e) O programa, de fato, resulta na mensagem informando que escolhemos a cor azul. 11ª Questão: (0,6 pontos): Analise o trecho de código abaixo e responda quantas vezes o programa vai entrar no laço de repetição. for (i=5; i<30; i=i*2) printf( %d\n, i); a) 6 vezes b) 3 vezes c) 5 vezes d) Nenhuma vez e) Infinitas vezes 5 de 6
12ª Questão: (0,6 pontos): Analise o trecho de código abaixo e responda o que aparecerá na tela quando ele for executado. a) 14 b) 16 c) 3 d) 15 e) 2 int contador, alerta; for (contador=0; contador<=15; contador=contador+2) alerta = contador * 3; printf ( %i,contador); 13ª Questão: (0,6 pontos): Relacione as duas colunas abaixo, e depois indique a alternativa com as relações corretas: Código de impressão formatada com printf() ( 1 ) %d ( 2 ) %f ( 3 ) %c ( 4 ) %lf Tipo de variável correspondente ( a ) char ( b ) int ( c ) double ( d ) float a) 1-A, 2-C, 3-B, 4-B. b) 1-B, 2-D, 3-A, 4-C. c) 1-D, 2-A, 3-C, 4-B. d) 1-D, 2-B, 3-D, 4-A. 6 de 6