Você está na página 1de 5

1)

Enquanto um vetor é uma estrutura de dados homogênea unidimensional, pelo motivo de


crescer os dados de estrutura apenas em uma direção, que é para o lado direito, na forma de
linha, a matriz é uma estrutura de dados homogênea multidimensional, por permitir crescer
os dados da estrutura em mais de uma direção, que é para o lado direito (linha) e para baixo
(coluna).

Considerando que um programa em C tenha lido os elementos da matriz M [3][3], onde


foram incluídos os seguintes elementos:

1 4 7
2 5 8
3 6 9

E que, depois de lido estes valores, executamos o seguinte código na linguagem C:

for (x=0;x<3;x++)
{
for (y=0;y<3;y++)
{
if ( x < y)
Soma = Soma + M[x][y];
}
}
printf("Soma = %d", Soma);
Qual será a saída mostrada na execução deste programa?

Alternativas:

 a)Soma = 5
 b)Soma = 11
 c)Soma = 15
 d)Soma = 19
 e)Soma = 45

O programa lê os elementos de uma matriz 3x3 e, em seguida, executa dois loops aninhados

(um para x e outro para y) que percorrem todos os elementos da matriz.

A condição if (x < y) verifica se o valor de x é menor que o valor de y. Se isso for verdadeiro,

ele adiciona o valor de M[x][y] à variável Soma.

Vamos calcular a soma dos valores que atendem a essa condição:


Quando x = 0, y = 1, a soma é 4 (1ª linha, 2ª coluna)

Quando x = 0, y = 2, a soma é 7 (1ª linha, 3ª coluna)

Quando x = 1, y = 2, a soma é 8 (2ª linha, 3ª coluna)

Agora, somando esses valores: 4 + 7 + 8 = 19

Portanto, a saída mostrada na execução deste programa será:

d) Soma = 19

2)
As linguagens de programação possuem uma forma de encapsulamento de um bloco de
comandos que possuem uma lógica interna, expondo este bloco como se fosse um serviço,
que será executado, recebendo alguns parâmetros de entrada e retornando um resultado
como saída. Chamamos este recurso funções.

Existem algumas funções nas linguagens de programação que já estão prontas, ou seja,
estão codificadas e testadas. Elas são as funções pré-definidas. Pará usá-las, precisamos
somente declarar no programa o nome da biblioteca que está a função pré-definida.

Faça a associação das bibliotecas de função pré-definida da linguagem de programação C que


é apresentada na Coluna A desta tabela com a sua correta descrição apresentada na Coluna
B.

Biblioteca das funções pré-definida do C Descrição da função


I. <strings.h> 1. Contém funções matemáticas
II. <math.h> 2. Contém funções para entrada e saída de dados
III. <stdio.h> 3. Contém funções para manipulação de strings
Assinale a alternativa que apresenta a associação CORRETA entre as colunas.

Alternativas:

 a)

I - 2; II - 1; III - 3.

 b)

I - 3; II - 1; III – 2.

 c)

I - 1; II - 2; III - 3
 d)

I - 3; II - 2; III - 1.

 e)

I - 2; II - 3; III - 1.

3)
Os tipos de variáveis são normalmente declarados no início dos programas, pois fisicamente
essas variáveis estão alocadas em determinadas regiões de memória, e é o tipo que
determina qual o tamanho deve ser considerado para reservar o espaço mais adequado na
memória. Muitas vezes o tipo da variável precisa ser alterado ao longo da execução do
programa, e essa alteração pode ser bem-sucedida ou não.

Sobre a conversão implícita de tipos de dados, avalie os itens a seguir:

I. Uma conversão de float para long resulta em um truncamento.


II. Uma conversão de um char para int não causa perda de informação.
III. Uma conversão de double para float resulta em perda de precisão.
IV. Uma conversão de int para float perde os valores após a vírgula, na parte decimal.
Considerando o contexto apresentado, é correto o que se afirma em:

Alternativas:

 a)Somente os itens I e III estão corretos.


 b)Somente os itens I e II estão corretos.
 c)Somente os itens II e III estão corretos.
 d)Somente os itens I, II e III estão corretos.
 e)Somente os itens II, III e IV estão corretos.

4)Considere o seguinte programa escrito em linguagem C:

#include <stdio.h>
int main()
{
int numero;
numero = 10 - 3 * 20;

if (numero > 0)
printf(" %d, numero positivo \n", numero);
else
printf(" %d, numero negativo \n", numero);
}
Assinale a alternativa que apresenta corretamente a saída deste programa na tela:

Alternativas:
 a)

-50, numero negativo

 b)

140, numero positivo

 c)

50, numero positivo

 d)

-140, numero negativo

 e)

-70, numero negativo

5)
Analise o código fonte a seguir:

1. #include <stdio.h>
2. #include <stdlib.h>
3. int main()
4. {
5. int time1; time2;
6.
7. printf("Digite a quantidade de gols do time 1: \n");
8. scanf("%i", &time1);
9.
10. printf("Digite a quantidade de gols do time 2: \n");
11. scanf("%i", &time2);
12.
13. if (time1 > time2)
14. printf("O vencedor da partida foi o time 1! \n");
15. else if (time1 == time2);
16. printf("A partida terminou em empate! \n");
17. else
18. printf("O vencedor da partida foi o time 2! \n");
19. }

Com base na análise do código-fonte fornecido, avalie os itens a seguir:


I. Na linha 5 a declaração de variáveis está incorreta, pois o tipo mais adequado para
quantidade de gols é o tipo real.
II. Na linha 8 o símbolo & irá causar um erro de execução.
III. Na linha 15 há um ; (ponto e vírgula) indevido.
IV. Na linha 15 há uma estrutura condicional encadeada.
De acordo com sua análise, assinale a alternativa correta:
Alternativas:

 a)Somente os itens I e II estão corretos.


 b)Somente os itens I e III estão corretos.
 c)Somente os itens I, II e IV estão corretos.
 d)Somente os itens I, III e IV estão corretos.
 e)Somente os itens III e IV estão corretos.

Com relação ao código fonte na linguagem C apresentado, somente os itens III e IV são corretos.

Alternativa E.

Analisando o código

Nessa questão, temos um código na linguagem C. Sobre este, vamos analisar as afirmações:

 I) Errada - A quantidade de gols só pode ser inteiro, pois não há, por exemplo, a possibilidade de

2,5 gols para um time.

 II) Errada - O símbolo & está sendo usando para atribuir o valor digitado pelo usuário para

a variável "time1". Sem esse símbolo, a leitura não seria feita e o valor não seria atribuído.

 III) Correta - Na linha 15, como temos um condicional, então não deveria existir esse ponto e

vírgula. Só seria permitido, nesse caso, um colchete, mas como há somente um comando para o

condicional, ele não é obrigatório.

 IV) Correta - Podemos verificar que em "else if", o comando "if" está dentro do else, que, por

sua vez, vem de outro if.

Portanto, são corretos somente III e IV. Alternativa E.

Você também pode gostar