Buscar

LINGUAGEM DE PROGRAMAÇÃO I aula 6

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1.
		Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
	
	
	
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	
	
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		2.
		A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
	
	
	
	char valores[] = {'A', 'B', 'C', 'D'};
	
	
	int valores[] = {10, 15, 20, 25, 30};
	
	
	char valores[5] = {'A', 'B', 'C', 'D'};
	
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	
	char valores = "ABCD";
	
Explicação:
Errada: char valores = "ABCD"; porque faltam [].
Deveria ser assim: char valores[] = "ABCD";
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		3.
		
Qual o elemento do vetor referenciado por vet[vet[5]]?
	
	
	
	4
	
	
	3
	
	
	9
	
	
	1
	
	
	2
	
	
	
	
		
	
		4.
		Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem como utilizar, declarar e utilizar.
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa decimal e que é necessário criar um vetor que armazene até 150 notas, qual alternativa declara de forma correta este vetor para  atender a necessidade citada.
	
	
	
	real notas[150];
	
	
	float %.1f notas[150];
	
	
	integer notas[150];
	
	
	float notas[150];
	
	
	int notas[150];
	
Explicação:
Quando declaramos um vetor, primeiro precisamos escolher o tipo e como são notas, precisará ser float.
Depois, entre parênteses, o número de notas que precisa ser armazenado. Nesse caso 150.
Se o vetor será preenchido com notas que não são sabidas, nada mais existe na declaração.
CORRETA: float notas[150];
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		5.
		Analise o código a seguir e marque a alternativa que se efetuada mostraria na tela apenas os números ímpares armazenados no vetor.
#include < stdio.h> //Retire o espaço depois de < quando for compilar
#define T 10
int main()
{
int x[T], i;
for(i=0; i< T; i++)x[i]=i+1;
for(i=1; i< T; i+=2)
{
 printf("x[%d]: %d\n", i,x[i]);
}
return 0;
}
	
	
	
	for(i=0; i< T; i+=1)
	
	
	for(i=1; i< T; i+=1)
	
	
	for(i=0; i< T/2; i+=2)
 
	
	
	for(i=1; i< T/2; i+=2)
	
	
	for(i=0; i< T; i+=2)
	
Explicação:
Se fizermos for(i=0; i< T; i+=2) são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos,
já que no segundo laço a variável i é iniciada com o valor 0 e o incremento é 2. Repare que as posiçoes impares contêm apenas números pares.
	
	
	
	
		
	
		6.
		Os chamados vetores e matrizes podem ser considerados como:
	
	
	
	Comandos de seleção
	
	
	Comandos de repetição
	
	
	Estruturas de dados homogêneas
	
	
	Estruturas de dados heterogêneas
	
	
	Comandos de seleção composta
	
Explicação:
São chamados de Estruturas de Dados Homogêneas  porque são formados por dados do mesmo tipo.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		7.
		Assim como nas variáveis, podemos inicializar os vetores assim que declaramos. 
Sabendo-se que existe um vetor de 3 posições do tipo inteiro, qual das opções abaixo correspondo a correta forma de se declarar e inicializar este vetor?
	
	
	
	int numeros[3] = ( 0, 1, 2);
	
	
	int numeros[3] = { 0, 1, 2};
	
	
	integer numeros[3] = [ 0, 1, 2];
	
	
	int numeros(2) = { 0, 1, 2};
	
	
	int numeros[2] = [ 0, 1, 2];
	
Explicação:
Resposta correta: int numeros[3] = { 0, 1, 2};
Na declaração com atribuição de um vetor precisamos incluir:
Um par de [] com, ou sem, tamanho ao lado do nome.
Os valores separados por vírgulas e entre um par de { }.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		8.
		Um aluno estava estudando matrizes e se deparou com um pequeno problema: toda vez que ele pedia para exibir o conteúdo de uma variável de uma matriz unidimensional, o resultado que aparecia era outro.
Sabe-se que ele dimensionou uma matriz de nome numerosI para armazenar 100 números inteiros e que ele construiu um trecho que exibia, numerado de 1 até 100, os números digitados.
Observe o trecho do programa abaixo e assinale a opção onde estão presentes a declaração da matriz e a chamada correta do número escolhido pelo usuário.
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
Explicação:
Na declaração de um vetor é necessário informar a quantidade de elementos que comporão o vetor, assim para 100 inteiros temos:
int numerosI[100];
E como os indices de um vetor começam a partir de 0, temos :
printf("\n%d\n",numerosI[pos-1]);
	
	
		
	
		1.
		Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
	
	
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
	
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		2.
		A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
	
	
	
	char valores[5] = {'A', 'B', 'C', 'D'};
	
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	
	char valores = "ABCD";
	
	
	int valores[] = {10, 15, 20, 25, 30};
	
	
	char valores[] = {'A', 'B', 'C', 'D'};Explicação:
Errada: char valores = "ABCD"; porque faltam [].
Deveria ser assim: char valores[] = "ABCD";
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		3.
		
Qual o elemento do vetor referenciado por vet[vet[5]]?
	
	
	
	9
	
	
	3
	
	
	4
	
	
	1
	
	
	2
	
	
	
	
		
	
		4.
		Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem como utilizar, declarar e utilizar.
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa decimal e que é necessário criar um vetor que armazene até 150 notas, qual alternativa declara de forma correta este vetor para  atender a necessidade citada.
	
	
	
	float notas[150];
	
	
	float %.1f notas[150];
	
	
	real notas[150];
	
	
	integer notas[150];
	
	
	int notas[150];
	
Explicação:
Quando declaramos um vetor, primeiro precisamos escolher o tipo e como são notas, precisará ser float.
Depois, entre parênteses, o número de notas que precisa ser armazenado. Nesse caso 150.
Se o vetor será preenchido com notas que não são sabidas, nada mais existe na declaração.
CORRETA: float notas[150];
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		5.
		Analise o código a seguir e marque a alternativa que se efetuada mostraria na tela apenas os números ímpares armazenados no vetor.
#include < stdio.h> //Retire o espaço depois de < quando for compilar
#define T 10
int main()
{
int x[T], i;
for(i=0; i< T; i++)x[i]=i+1;
for(i=1; i< T; i+=2)
{
 printf("x[%d]: %d\n", i,x[i]);
}
return 0;
}
	
	
	
	for(i=0; i< T; i+=2)
	
	
	for(i=0; i< T/2; i+=2)
 
	
	
	for(i=0; i< T; i+=1)
	
	
	for(i=1; i< T; i+=1)
	
	
	for(i=1; i< T/2; i+=2)
	
Explicação:
Se fizermos for(i=0; i< T; i+=2) são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos,
já que no segundo laço a variável i é iniciada com o valor 0 e o incremento é 2. Repare que as posiçoes impares contêm apenas números pares.
	
	
	
	
		
	
		6.
		Os chamados vetores e matrizes podem ser considerados como:
	
	
	
	Estruturas de dados heterogêneas
	
	
	Estruturas de dados homogêneas
	
	
	Comandos de seleção composta
	
	
	Comandos de seleção
	
	
	Comandos de repetição
	
Explicação:
São chamados de Estruturas de Dados Homogêneas  porque são formados por dados do mesmo tipo.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		7.
		Assim como nas variáveis, podemos inicializar os vetores assim que declaramos. 
Sabendo-se que existe um vetor de 3 posições do tipo inteiro, qual das opções abaixo correspondo a correta forma de se declarar e inicializar este vetor?
	
	
	
	int numeros[2] = [ 0, 1, 2];
	
	
	integer numeros[3] = [ 0, 1, 2];
	
	
	int numeros(2) = { 0, 1, 2};
	
	
	int numeros[3] = ( 0, 1, 2);
	
	
	int numeros[3] = { 0, 1, 2};
	
Explicação:
Resposta correta: int numeros[3] = { 0, 1, 2};
Na declaração com atribuição de um vetor precisamos incluir:
Um par de [] com, ou sem, tamanho ao lado do nome.
Os valores separados por vírgulas e entre um par de { }.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		8.
		Um aluno estava estudando matrizes e se deparou com um pequeno problema: toda vez que ele pedia para exibir o conteúdo de uma variável de uma matriz unidimensional, o resultado que aparecia era outro.
Sabe-se que ele dimensionou uma matriz de nome numerosI para armazenar 100 números inteiros e que ele construiu um trecho que exibia, numerado de 1 até 100, os números digitados.
Observe o trecho do programa abaixo e assinale a opção onde estão presentes a declaração da matriz e a chamada correta do número escolhido pelo usuário.
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
Explicação:
Na declaração de um vetor é necessário informar a quantidade de elementos que comporão o vetor, assim para 100 inteiros temos:
int numerosI[100];
E como os indices de um vetor começam a partir de 0, temos :
printf("\n%d\n",numerosI[pos-1]);
	
	
		
	
		1.
		O que será impresso pelo trecho de código abaixo?
int vet[5]; 
int x, s = 0;
for (x = 0; x < 5; x++) {
    vet[x] = x * 2;
}
s = vet[2] + vet[4];
printf("%d", s);
	
	
	
	10
	
	
	8
	
	
	4
	
	
	20
	
	
	12
	
Explicação:
Acompanhando a execução, encontraremos a resposta 12
int vet[5]; 
int x, s = 0;
for (x = 0; x < 5; x++) {
    vet[x] = x * 2;
}
s = vet[2] + vet[4];
printf("%d", s);
	x
	s
	vet[0]
	vet[1]
	vet[2]
	vet[3]
	vet[4]
	 
	0
	 
	 
	 
	 
	 
	0
	0
	0
	 
	 
	 
	 
	1
	0
	0
	2
	 
	 
	 
	2
	0
	0
	2
	4
	 
	 
	3
	0
	0
	2
	4
	6
	 
	4
	0
	0
	2
	4
	6
	8
	5
	12
	0
	2
	4
	6
	8
	
	
	
	
		
	
		2.
		Um aluno estava estudando a Aula 6 quando se deparou com o trecho abaixo onde dizia que declarava e inicializava o vetor de nome matriculas e do tipo int.
int x, matriculas[4]={123,138, 13, 97  };
Ele gostaria de construir um trecho para exibir os dados do vetor na mesma linha.
Qual dos trechos abaixo ele usou?
	
	
	
	for(x = 0; x <= 4; x++ )
 printf("%d\n",matriculas[x]);
	
	
	for(x = 0; x < 4; x++ )
 printf("%d\t",matriculas[x]);
	
	
	for(x=1; x < 4; x++ )
 printf("%d\t",matriculas[x]);
	
	
	for(x = 0; x < 4; x++ )
 printf("%d\n",matriculas[x]);
	
	
	for(x = 1; x <= 4; x++ )
 printf("%d\n",matriculas[x]);
	
Explicação:
Um trecho que manipula todo o vetor deverá começar em 0 e terminar antes do tamanho.
Usar o caractere \t possibilita exibr na mesma linha.
	
	
	
	
		
	
		3.
		Um aluno estava estudando a Aula 6 quando se deparou com a linha abaixo onde dizia que declarava e inicializava o vetor de nome matriculas e do tipo int.
int matriculas[]={123,138, 13, 97, 64, 111 };
Achou estranho não ter um número dentro dos [ ] após o nome.
Qual o tamanho do vetor e o que  ele deveria incluir na linha abaixo para exibir a terceira matrícula?
printf( " \n%d ", ?);
	
	
	
	Não tem como informar o tamanho do vetor, mas para exibir a terceira matricula usaria matriculas[3]  
   
	
	
	Tamanho é 6 e para exibir a terceira matricula usaria matriculas[2] 
	
	
	Tamanho é 6 e para exibir a terceira matricula usaria matriculas[3] 
 
	
	
	Tamanho é 5 e para exibir a terceira matricula usaria matriculas[3] 
 
	
	
	Tamanho é 5 e para exibir a terceira matricula usaria matriculas[2] 
 
	
Explicação:
Lembro que o número entre o par [ ] significa o deslocamento em relação ao endereço base onde se encontra o primeiro elemento do vetor.
	
	
	
	
		
	
		4.
		Um programador deve declarar um vetor para armazenar as idades dos alunos de uma turma com 50 alunos.
Marque a alternativa correta para a declaração deste vetor, sabendo que o programamdor resolveu identificá-lo como vetorIdade.
	
	
	
	float vetorIdade[49];
	
	
	int vetorIdade[49];
	
	
	float vetorIdade[50];
	
	
	int vetorIdade[50];
	
	
	double vetorIdade[25];
	
Explicação:
A declaração de um vetor é feita na forma identificador [nº de campos],
como o dado a ser armazenado é idade que é uma grandeza inteira e necessita-se de 50 posiçoes o correto é int vetorIdade[50];
 
	
	
	
	
		
	
		5.
		Um  programador precisa declarar vetores para armazenar códigos dos 101 usuários e respectivos valores a pagar.
Lembrandoque nenhum centavo será descartado, qual das opções abaixo, atenderia ao que ele precisa.
	
	
	
	  int codigos[101]; float valores[101];
	
	
	  int codigos[100]; float valores[100];
	
	
	  int codigos[100], valores[100];
 
	
	
	  int codigos[101], valores[101];
	
	
	  char codigos[100]; float valores[100];
	
Explicação:
Declarar um vetor está bem explicado na Aula 6.
tipo nomeVetor[tamanho];
	
	
	
	
		
	
		6.
		Um programador declarou os vetores abaixo e gostaria de fazer o trecho de entrada para armazenar códigos dos 43 funcionários e respectivos salários.
  int x,codigos[43]; float salarios[43];
A dúvida dele está na linha do for. Você poderia indicar qual ele deveria escolher?
	
	
	
	  for(x = 0; x <= 43 ; x++ )
	
	
	  for(x = 0; x < 44 ; x++ )
	
	
	  for(x = 0; x < 43 ; x++ )
	
	
	  for(x = 1; x <= 43 ; x++ )
	
	
	  for(x = 1; x < 43 ; x++ ) 
	
Explicação:
Saber que o número que fica dentro dos [ ] é o deslocamento em relação ao endereço base é fundamental para resolver a questão.
Isso é bem explicado na AULA 6
	
	
	
	
		
	
		7.
		
Qual o elemento do vetor referenciado por vet[3]?
	
	
	
	4
	
	
	0
	
	
	7
	
	
	1
	
	
	2
	
Explicação:
Vetores são estruturas contíguas onde suas posições são referenciadas a partir de índices, onde o índice inicial é 0 (zero), o seguinte 1 e assim por diante.
O vetor é referenciado pelo endereço do primeiro byte do conjunto logo, o primeiro elemento tem o mesmo endreço do vetor e como o que fica entre [ ] é o deslocamenro do elmento em relação ao endreço base, 0 fica dentro dos [ ]. 
Desta forma o conteúdo do campo Vet[3] é 7.
	
	
	
	
		
	
		8.
		Em um programa o programador inseriu a seguinte linha de código: float notas [10]. Esta linha quer dizer:
	
	
	
	notas é uma constante de valor 10.
	
	
	notas é uma variável de potência 10.
	
	
	notas é uma string com 10 caracteres.
	
	
	notas é um vetor com 10 números reais.
	
	
	notas é uma função para somar 10 números.
	
Explicação:
Analisando float notas [10]
float é o tipo do dado armazenado logo, real
notas é o nome do vetor.
[10] é o tamanho do vetor logo, 10 elementos.
 
		1.
		Uma empresa possui uma série de programas desenvolvidos em C que acessam um mesmo arquivo. Um dos problemas constatados é a falta de padronização no armazenamento de dados neste arquivo. Alguns aplicativos gravam em caixa alta (letras maiúsculas), outros em caixa baixa (letras minúsculas) e alguns não administram isto.
Para tanto, foi definido, por padrão, que todos os caracteres lidos devem ser convertidos para caixa alta imediatamente após a leitura do mesmo. Qual função do C devo incluir nos programas para efetuar a conversão de caractere a caractere?
	
	
	
	toupper
	
	
	convertUpper
	
	
	convertUp
	
	
	toupr
	
	
	upper
	
Explicação:
A função toupper() converte uma letra para maiúscula.
	
	Gabarito Coment.
	
	
	
	
		
	
		2.
		Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string?
	
	
	
	strcap
	
	
	strcamp
	
	
	strcat
	
	
	strlen
	
	
	strcout
	
	
	
	
		
	
		3.
		Analise o código a seguir e marque a alternativa que melhor descreve o que está sendo executado.
#include < stdio.h> //Retire o espaço depois de < quando for compilar
#define T 10
int main()
{
int x[T], i;
for(i=0; i< T; i++)x[i]=i+1;
for(i=1; i< T; i+=2)
{
 printf("x[%d]: %d\n", i,x[i]);
}
return 0;
}
 
	
	
	
	É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos.
 
	
	
	É declarado um vetor de inteiros com 9 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos.
 
	
	
	É declarado um vetor de inteiros com 9 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos.
 
	
	
	É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 9, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos.
 
	
	
	É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos.
 
	
Explicação:
É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.
E são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos, já que no segundo laço a variável i é iniciada com o valor 1 e o incremento é 2.
	
	
	
	
		
	
		4.
		Observe o trecho abaixo e marque o valor que será mostrado pela variável c após a execução do programa.
	
	
	
	8
	
	
	20
	
	
	10
	
	
	14
	
	
	22
	
Explicação:
Esse é um vetor de tamanho 5 e como o número que fica entre colchetes representa o deslocamento do primeiro endereço do conjunto e que coincide o endereço do primeiro elemento,ele terá 0 dentro dos [0] e por essa razão, o for varia de 0 até 4.
	0
	1
	2
	3
	4
	7
	5
	6
	8
	12
 
A variável b é acrescida de todo número múltiplo de 6 logo, 6 e 12, ficando com 18.
A variável a é subtraída do deslocamento de todo número que não é múltiplo de 6 logo, 0, 1 e 3, ficando com -4.
A variável c recebe o resultado de b + a (18-4), ficando com 14.
	
	
	
	
		
	
		5.
		Na programação estruturada quando implementamos de modo sequencial ocorre um problema com relação ao armazenamento destas variáveis que é a perca de dados armazenados. Para solucionar este problema uma estrutura de dados adequada para isto é:
	
	
	
	Utilizar estrutura de decisão
	
	
	Utilizar funções matemáticas
	
	
	Utilizar o comando enquanto
	
	
	Utilizar funções
	
	
	Utilizar vetores
	
	
	
	
		
	
		6.
		A linguagem C, ao contrário de outras linguagens de programação, não possui um tipo de dados correspondente às strings; no lugar, usam-se vetores e ponteiros
Admitindo-se que existe declarado um vetor chamado nome de 50 posições(nome[50]), qual das opções abaixo efetua corretamente a leitura de seu primeiro nome?
	
	
	
	scanf("%c", nome[0]);
	
	
	scanf("%s", &nome);
	
	
	scanf("%s&c", nome[0]);
	
	
	scanf("%s", nome);
	
	
	scanf("%&s", &nome);
	
	Gabarito Coment.
	
	
	
	
		
	
		7.
		Analise as sentenças abaixo sobre a declaração de vetores e, em seguida, assinale a alternativa correta:
I. Na linguagem C++, uma string é um vetor de caracteres terminado com um caracter nulo cujo valor inteiro é igual a zero (código ASCII igual a 0).
II. O terminador nulo também pode ser escrito usando a convenção de barra invertida do C++ como sendo '\0'.
III. Como precisamos reservar duas posições para o terminador (a barra e o zero), sempre iremos declarar o tamanho necessário menos um.
 
	
	
	
	Somente as sentenças II e III estão corretas
	
	
	Somente as sentenças I e II estão corretas
	
	
	Todas as sentenças estão corretas
	
	
	Somente as sentenças I e III estão corretas
	
	
	Somente a sentença II está correta
	
Explicação:
As duas primeiras estão corretascomo poderá verificar na Aula 6.
Errada somente a III: Como precisamos reservar duas posições para o terminador (a barra e o zero), sempre iremos declarar o tamanho necessário menos um.
Porque o caractere \0 só ocupa uma posição e, por essa razão, sempre declaramos mais uma posição para ele.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		8.
		Qual das instruções abaixo compara duas strings?
	
	
	
	strcamp
	
	
	strcpy
	
	
	strcat
	
	
	strcompa
	
	
	strcmp
	
Explicação:
Na biblioteca string.h, encontramos várias funções e uma delas strcmp(string compare) serve para comparar duas strings.
	
	
		
	
		1.
		Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
	
	
	
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		2.
		A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
	
	
	
	char valores[] = {'A', 'B', 'C', 'D'};
	
	
	char valores[5] = {'A', 'B', 'C', 'D'};
	
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	
	int valores[] = {10, 15, 20, 25, 30};
	
	
	char valores = "ABCD";
	
Explicação:
Errada: char valores = "ABCD"; porque faltam [].
Deveria ser assim: char valores[] = "ABCD";
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		3.
		
Qual o elemento do vetor referenciado por vet[vet[5]]?
	
	
	
	4
	
	
	1
	
	
	3
	
	
	9
	
	
	2
	
	
	
	
		
	
		4.
		Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem como utilizar, declarar e utilizar.
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa decimal e que é necessário criar um vetor que armazene até 150 notas, qual alternativa declara de forma correta este vetor para  atender a necessidade citada.
	
	
	
	real notas[150];
	
	
	float notas[150];
	
	
	int notas[150];
	
	
	integer notas[150];
	
	
	float %.1f notas[150];
	
Explicação:
Quando declaramos um vetor, primeiro precisamos escolher o tipo e como são notas, precisará ser float.
Depois, entre parênteses, o número de notas que precisa ser armazenado. Nesse caso 150.
Se o vetor será preenchido com notas que não são sabidas, nada mais existe na declaração.
CORRETA: float notas[150];
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		5.
		Analise o código a seguir e marque a alternativa que se efetuada mostraria na tela apenas os números ímpares armazenados no vetor.
#include < stdio.h> //Retire o espaço depois de < quando for compilar
#define T 10
int main()
{
int x[T], i;
for(i=0; i< T; i++)x[i]=i+1;
for(i=1; i< T; i+=2)
{
 printf("x[%d]: %d\n", i,x[i]);
}
return 0;
}
	
	
	
	for(i=0; i< T; i+=2)
	
	
	for(i=1; i< T; i+=1)
	
	
	for(i=1; i< T/2; i+=2)
	
	
	for(i=0; i< T/2; i+=2)
 
	
	
	for(i=0; i< T; i+=1)
	
Explicação:
Se fizermos for(i=0; i< T; i+=2) são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos,
já que no segundo laço a variável i é iniciada com o valor 0 e o incremento é 2. Repare que as posiçoes impares contêm apenas números pares.
	
	
	
	
		
	
		6.
		Os chamados vetores e matrizes podem ser considerados como:
	
	
	
	Comandos de seleção
	
	
	Estruturas de dados heterogêneas
	
	
	Comandos de seleção composta
	
	
	Comandos de repetição
	
	
	Estruturas de dados homogêneas
	
Explicação:
São chamados de Estruturas de Dados Homogêneas  porque são formados por dados do mesmo tipo.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		7.
		Assim como nas variáveis, podemos inicializar os vetores assim que declaramos. 
Sabendo-se que existe um vetor de 3 posições do tipo inteiro, qual das opções abaixo correspondo a correta forma de se declarar e inicializar este vetor?
	
	
	
	int numeros[3] = { 0, 1, 2};
	
	
	int numeros[3] = ( 0, 1, 2);
	
	
	integer numeros[3] = [ 0, 1, 2];
	
	
	int numeros(2) = { 0, 1, 2};
	
	
	int numeros[2] = [ 0, 1, 2];
	
Explicação:
Resposta correta: int numeros[3] = { 0, 1, 2};
Na declaração com atribuição de um vetor precisamos incluir:
Um par de [] com, ou sem, tamanho ao lado do nome.
Os valores separados por vírgulas e entre um par de { }.
	
	Gabarito Coment.
	
	
	Gabarito Coment.
	
	
	
	
		
	
		8.
		Um aluno estava estudando matrizes e se deparou com um pequeno problema: toda vez que ele pedia para exibir o conteúdo de uma variável de uma matriz unidimensional, o resultado que aparecia era outro.
Sabe-se que ele dimensionou uma matriz de nome numerosI para armazenar 100 números inteiros e que ele construiu um trecho que exibia, numerado de 1 até 100, os números digitados.
Observe o trecho do programa abaixo e assinale a opção onde estão presentes a declaração da matriz e a chamada correta do número escolhido pelo usuário.
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
Explicação:
Na declaração de um vetor é necessário informar a quantidade de elementos que comporão o vetor, assim para 100 inteiros temos:
int numerosI[100];
E como os indices de um vetor começam a partir de 0, temos :
printf("\n%d\n",numerosI[pos-1]);

Continue navegando