Buscar

Lista7 ESTRUTURA DE DADOS

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

Prévia do material em texto

Lista 7 – Alocação dinâmica / Listas Encadeadas 
 
 
1) Considere 
 
struct caixa { 
 char c; // refere-se a cor : P (preta) ou B (branca) 
 float preco; 
 } ; 
 
caixa *p, *q, *r; 
caixa x , y, z; 
 
Assinale V (verdadeiro) ou F (falso). Caso seja verdadeiro, exemplifique com, mas 
se for falso, reescreva uma possível forma correta. 
 
a) r = &x; 
b) p = r; 
c) q = y; 
d) r = NULL; 
e) p = *x; 
f) *q = NULL; 
g) *p = *x; 
h) z.c = ‘B’; 
i) rpreco = 12.99; 
j) p.preco = 99.99; 
k) (*p)c = ‘P’; 
 
2) Considere struct no { 
 int dado; 
 struct no *link; 
 }; 
 
 no *p, *q; 
 
e as listas encadeadas abaixo : 
 
 
 
 
 
 
 
 Sempre a partir das considerações acima, diga objetivamente ou represente graficamente, o 
que ocorrerá com as listas após cada item. Atenção : Um item não interfere no seguinte. 
 
2 4 
 
 6 
 
 8 
 
 p 
1 3 
 
 5 
 
 q 
 
a) p = q; 
b) plink = q; 
c) plinklink = qlinklinklink; 
d) qdado = 100; 
e) plinkdado = qlinkdado; 
f) q = NULL; 
 
 
3) Seja o trecho 
 
int *p, *q, x = 10; 
 
q = &x; 
p = new int; 
*p = *q; 
cout << “ X = “ << x 
 << “*p = “ << *p 
 << “*q = “ << *q 
 << endl; 
 
a) p e q são iguais ? Justifique. 
b) *p e * q são iguais ? Justifique. 
 
4) O que é impresso na tela , considerando o trecho dado abaixo ? 
 
struct aluno { 
 int matricula; 
 float media; 
} ; 
 
aluno a, *p, *q; 
 
a.matricula = 10989; 
a.media = 9.5; 
p = &a; 
cout << “ Matricula = “ << pmatricula << endl; 
cout << “Media = “ << pmedia << endl; 
q = new aluno; 
qmatricula = 20895; 
qmedia = 8.9; 
cout << qmatricula << endl; 
cout << qmedia << endl;

Outros materiais