Prévia do material em texto
1. Avalie as assertivas a seguir referente ao conceitos de tipos de dados, em algoritmos. I. Um dado do dito simples contém apenas 1 valor II. Um dado dito estruturado contém mais de 1 valor III. O tipo de dado inteiro é simples IV. O tipo de dado char (caracter) é estruturado V. O tipo de dados definine o conjunto de valores que o dado podera assumir Com base em sua análise, assinale a UNICA alternativa que apresenta APENAS as assertivas CORRETAS I, II e IV apenas I e II apenas I, II, III e V apenas I, II, III, IV e V I, II, III e IV apenas 2. No que concerne a variáveis e constantes, avalie as assertivas a seguir: I. Um dado declarado como constante pode ser alterado desde que seja simples II. Podemos ter apenas variáveis globais, ou seja usadas por todo o programa. III. Uma variável é uma abstração que permite armazenar um dado em uma determinada posição de memória IV. Um dado declarado como variável não pode sofrer alteração de valor. Assinale a UNICA alternativa contendo APENAS as opções corretas III e IV apenas II e III apenas I, II e IV apenas II, ,III e IV apenas Apenas III Explicação: I. Um dado declarado como constante pode ser alterado desde que seja simples --> FALSO, uma constante NAO tem seu valor alterado no programa II. Podemos ter apenas variáveis globais, ou seja usadas por todo o programa. --> FALSO, podemos ter variáveis locais, internas a uma função III. Uma variável é uma abstração que permite armazenar um dado em uma determinada posição de memória --> VERDADE IV. Um dado declarado como variável não pode sofrer alteração de valor. --> FALSO, pode sim sofrer alteração um dado declarado como variável 3. Considere o seguinte segmento de código na linguagem C: int a=3, b=2, c; c=a!=b; Assinale a alternativa que apresenta os valores das variáveis término da execução: 3, 3, 1 3, 2, 3 3, 3, 3 3, 2, 1 3, 2, 2 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 e 68 68.0000 e 69.0000 66.000 e 67.000 66.000000 e 68.00000 68.00 e 69.00 Explicação: int main() { float n; // declara uma variável real chamada n printf("Digite um numero: "); // exibe na tela o texto "Digite um numero: " scanf("%f",&n); // atribui o valor digitado pelo usuário à variável n, armazenando o valor digitado no endereço de memória da variável printf("Valor 1: %f e Valor 2: %f", n-1, n+1); // O primeiro campo de impressão %f é associado ao resultado da expressão n-1 e o segundo ao resultado da expressão n+1 // Supondo que o usuário o tendo digitado 67, n-1 dá 66 e n+1 dá 68 // Como trata-se de variável real exibida de forma livre (%f), a impressão inclui os zeros, aparecendo na tela o Valor 1 como 66.000000 e o Valor 2 como 68.000000 } 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 SE ENTÃO SENÃO SE CASO REPITA CASO SELECIONE Explicação: A liguagem C implementa a condição sem explicitar o ENTÃO Os comandos de cada bloco são delimitados pelas chaves A estrutura lógica seria SE (num > 15) ENTÃO resul = num * 2; printf("Resultado: %d", resul); SENÃO printf ("Numero menor que 15."); Dessa forma, a resposta correta é a opção SE ENTÃO SENÃO 6. Observe a descrição da estrutura bá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: Somente um dos grupos de comandos pode ser executado de cada vez. O comando break não é permitido no interior dos grupos de comandos. As variáveis de controle podem ser do tipo int, char e float. O código para o caso default é obrigatório. Cada caso deve ser definido por uma constante escrita após a palavra case, seguida dos dois pontos 7. Considere o seguinte trecho de código na linguagem C e avalie as assertivas a seguir. ind=1; while (ind<=5) { scanf("%d",&num); controle++; if (controle == 1 && num%2 == 0) menor=num; else if (num menor=num; ind++; } I. Para que a variável menor receba o conteúdo da variável num, pela primeira vez é necessário que o conteúdo da variável controle seja 1 e o conteúdo da variável num seja par. II. A estrutura de repetição escolhida é indicada quando se sabe ou não o número de repetições III. A sequência de comandos interna ao comando WHILE será repetida 5 vezes. I II e III I e II I e III I, II e III 8. Analise o código abaixo e selecione a opção que melhor descreve o seu funcionamento. #include int main() { int v[100], i; printf("\nDigite os numeros:\n"); for (i=0; i<100; i++) scanf("%d", &v[i]); for (i=99; i>=0; i--) printf("%d \n", v[i]); } Solicita ao usuário que digite um número e exibe na tela os cem números anteriores. Solicita ao usuário a entrada de cem números inteiros e exibe na tela. Solicita ao usuário que digite um número e exibe na tela os cem números posteriores. Solicita ao usuário a entrada de um ou mais números e soma os próximos cem números e exibe na tela. Solicita ao usuário a entrada de cem número inteiros e exibe na tela em ordem inversa da leitura 9. Qual a saida para o trecho de código abaixo? int i; for (i= -10; i < 5; i=i+3) { printf("%d",i); } -10 -7 0 -1 2 -7 -4 -1 2 5 -10 -7 -4 -1 2 -10 -7 0 3 6 -7 -4 -1 2 5 10. Considere a seguinte declaração de vetor na linguagem C: int vet [8] = {5,1,4,2,7,8,3,6}; Marque a alternativa que apresenta cada elemento do vetor após a execução do seguinte trecho de código: int ind, aux,vet[7]; for (ind=7;ind>=4;ind--) { aux=vet[7-ind]; vet[7-ind]=vet[ind]; vet[ind]=aux; } 6 3 4 2 7 8 1 5 6 1 4 2 7 8 3 5 6 3 8 7 2 4 1 5 5 1 4 2 7 8 3 6 6 3 8 2 7 4 1 5