Buscar

ESTRUTURA DE DADOS Exercicio 3

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 3 páginas

Prévia do material em texto

21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 1/3
Ref.: 201704208093
 1a Questão
Marque a opção correta, considerando 
 
struct Livro { 
 int codigo; 
 float preco; 
 } liv; 
 
Livro->liv.codigo = 12345;
Livro.liv.codigo = 12345;
liv->preco = 30.70;
Livro.codigo = 12345;
 liv.preco = 30.70;
 
 
 
Ref.: 201704175843
 2a Questão
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados
por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como:
 
 struct aluno {
 string nome;
 float nota;
};
 
Suponha ainda que exista um vetor desta estrutura, definido como:
 aluno vet [ 100];
 
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor.
aluno.vet[10].nota=5.7;
aluno.vet[10]=5.7;
vet[10]=aluno.5.7;
 vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
 
 
 
Ref.: 201704260937
 3a Questão
o programa de computador necessita preencher uma lista de alunos (nome e nota) até que a lista esteja cheia. Sabe-se que a lista tem
capacidade para 25 alunos. Utilizando agregados heterogêneos, qual o trecho de código que exibe a melhor forma de solucionar este problema?
 for (int i = 0; i < 25; i++) { cin >> lista[i].nome; cin >> lista[i].nota; }
for (int i = 0; i < 25; i++) { cin >> lista->nome; cin >> lista->nota; }
for (int i = 0; i < 25; i++) { cin >> lista[i]->nome; cin >> lista[i]->nota; }
int i = 0; while( i < 25) { cin >> lista[i].nome; cin >> lista[i].cargo; i ++; }
for (int i = 0; i <= 25; i++) { cin >> lista[i].nome; cin >> lista[i].nota; }
 
 
Explicação:
Analisando cada item :
for (int i = 0; i <= 25; i++) { cin >> lista[i].nome; cin >>
lista[i].nota; }
>> Falso. Veja que se há 25 itens, os índices começarão de 0 e irao
até 24 e não 25.
 
for (int i = 0; i < 25; i++) { cin >> lista[i]->nome; cin >>
lista[i]->nota; } 
>> Falso. Para acessar o campo de struct é ponto e não seta. 
lista[i] é uma struct e não um ponteiro.
 
21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 2/3
for (int i = 0; i < 25; i++) { cin >> lista->nome; cin >> lista-
>nota; }
 
 >> Falso. Para acessar o campo de struct é ponto e não seta. lista
é um vetor e lista[i] é um componente de lista. Usamos o operador
seta quando temos ponteiro para struct.
 
for (int i = 0; i < 25; i++) { cin >> lista[i].nome; cin >>
lista[i].nota; }
>> Verdadeiro.
 
int i = 0; while( i < 25) { cin >> lista[i].nome; cin >>
lista[i].cargo; i ++; }
 
>> Falso, porque foi pedido nome e nota e não cargo.
 
 
 
 
 
 
Ref.: 201704579068
 4a Questão
Em C++, quando uma variável é declarada como uma struct, o acesso para atribuição e leitura dos membros (campos) deste registro se dá pelo
operador :
 ∙ (ponto).
* (asterisco).
& (e comercial ou eitza).
, (vírgula).
-> (seta).
 
 
Explicação:
Por definição, o operador que permite acessar os campos de uma variável struct é o ponto (.).
 
 
 
 
Ref.: 201704106365
 5a Questão
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um
nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno
{ string nome; float media; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que
é atribuída de forma correta a media 6.0 para o quarto elemento deste vetor.
 aluno[10]=6.0;
aluno[3].media=6.0;
 vet[3].media=6.0;
aluno[3].10=6.0;
vet[3].aluno=6.0;
 
 
 
Ref.: 201704150054
 6a Questão
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um
nome.
 Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como:
 
struct aluno {
 string nome;
 float nota;
 };
 
21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 3/3
Suponha ainda que exista um vetor desta estrutura, definido como:
 
aluno vet [100];
 
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor.
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
vet[10].aluno.nota=5.7 ;
 vet[10].nota=5.7;
aluno.vet[10]=5.7;
 
 
 
Ref.: 201703741204
 7a Questão
Com relação à struct, é correto afirmar que :
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo.
 Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de
tipos diferentes ou não.
Cada elemento da struct é chamado componente.
A struct é sempre definida dentro da main.
Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados
distinto de outro campo.
 
 
 
Ref.: 201704579070
 8a Questão
Dadas as afirmativas abaixo, identifique as corretas e marque a alternativa verdadeira.
I- Vetores e matrizes servem apenas para construir agregados de dados heterogêneos.
II- Registros em C++ são tipos de dados compostos formados por mais de um tipo de dados.
III- Na Linguagem C++, "struct" é uma palavra reservada que serve para definir registros.
IV- Registros são tipos de dados heterogêneos.
estão corretas apenas as afirmativas I, III e IV.
estão corretas apenas as afirmativas I, II e IV.
estão corretas apenas as afirmativas I, II e III.
 estão corretas apenas as afirmativas II, III e IV.
todas as afirmativas estão corretas.
 
 
Explicação:
Analisando as afirmativas, temos :
Afirmativa I : Falso. Vetores e matrizes são agregados homogêneos.
Afirmativas II, III e IV : Estão corretas. Basicamente, structs são agregados heterogêneos.
Logo, a opção correta é estão corretas apenas as afirmativas II, III e IV.

Outros materiais