Logo Passei Direto
Buscar

Ferramentas de estudo

Questões resolvidas

Na linguagem C++, temos que : I. Se p é um ponteiro, *p é o valor da variável apontada por p. II. Um ponteiro pode receber o endereço de uma variável cujo tipo é o mesmo tipo usado na declaração do ponteiro. III. &v apresenta o endereço da variável v.
Qual a alternativa correta?
Apenas as afirmacoes II e III estão corretas.
Apenas a afirmação II está correta.
As afirmações I, II e III estão corretas.
Apenas a afirmação I está correta.
Apenas as afirmações I e II estão corretas.

Admita a seguinte estrutura de nó de uma lista simplesmente encadeada: struct tno { int chave; tno *proximo; }; Admita, agora, a seguinte declaração de uma variável do tipo nó: tno *no; Qual das alternativas a seguir traz uma operação válida sobre essa variável?
no->proximo = -10;
no->proximo = new tno;
no.proximo = no;
no->chave = new int;
no.chave = 5;

Seja uma lista encadeada cujo nodo é representado por: struct nodo{ int valor; nodo prox; }; Esta estrutura possui um ponteiro de referência que aponta sempre para o primeiro nodo da lista, sendo este declarado como: nodo *lista; Numa lista encadeada seu último nodo possui o campo prox sempre igual a NULL.
Marque a opção que representa o trecho de código onde um ponteiro auxiliar é capaz de percorre a lista até seu último nodo:
nodo *lista=aux; while(aux->prox)aux=aux->prox;
nodo *aux=lista; while(lista->prox)aux=aux->prox;
nodo *aux=lista; while(aux)aux->prox=aux;
nodo *aux=lista; while(aux->prox)aux=aux->prox;
nodo *aux=lista; while(aux->prox)aux->prox=aux->prox;

As variáveis são na verdade trecho de memórias que armazenam dados de diversas naturezas, portanto sempre que declara-se uma variável, na linguagem C++, é necessário informar o tipo de dado que esta irá armazenar. Um tipo especial de variáveis são os ponteiros, isto é, variáveis que armazenam apenas os endereços de outras variáveis. Assim os ponteiros são usados para que se possa acessar de forma indireta uma outra variável. Sabendo-se disto e supondo que o endereço na memória da variável "a" é 100 e o endereço da memória da variável ponteiro é 200, analise o trecho de código abaixo e marque a alternativa que representa a saída do programa:
9 100 200
100 9 200
200 9 100
100 100 200
9 9 200

As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo * proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação:
pt->5.60;
pt->valor=5.60;
pt->próximo.valor=5.60;
pt->próximo->valor=5.60;
pt.valor->5.60;

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Na linguagem C++, temos que : I. Se p é um ponteiro, *p é o valor da variável apontada por p. II. Um ponteiro pode receber o endereço de uma variável cujo tipo é o mesmo tipo usado na declaração do ponteiro. III. &v apresenta o endereço da variável v.
Qual a alternativa correta?
Apenas as afirmacoes II e III estão corretas.
Apenas a afirmação II está correta.
As afirmações I, II e III estão corretas.
Apenas a afirmação I está correta.
Apenas as afirmações I e II estão corretas.

Admita a seguinte estrutura de nó de uma lista simplesmente encadeada: struct tno { int chave; tno *proximo; }; Admita, agora, a seguinte declaração de uma variável do tipo nó: tno *no; Qual das alternativas a seguir traz uma operação válida sobre essa variável?
no->proximo = -10;
no->proximo = new tno;
no.proximo = no;
no->chave = new int;
no.chave = 5;

Seja uma lista encadeada cujo nodo é representado por: struct nodo{ int valor; nodo prox; }; Esta estrutura possui um ponteiro de referência que aponta sempre para o primeiro nodo da lista, sendo este declarado como: nodo *lista; Numa lista encadeada seu último nodo possui o campo prox sempre igual a NULL.
Marque a opção que representa o trecho de código onde um ponteiro auxiliar é capaz de percorre a lista até seu último nodo:
nodo *lista=aux; while(aux->prox)aux=aux->prox;
nodo *aux=lista; while(lista->prox)aux=aux->prox;
nodo *aux=lista; while(aux)aux->prox=aux;
nodo *aux=lista; while(aux->prox)aux=aux->prox;
nodo *aux=lista; while(aux->prox)aux->prox=aux->prox;

As variáveis são na verdade trecho de memórias que armazenam dados de diversas naturezas, portanto sempre que declara-se uma variável, na linguagem C++, é necessário informar o tipo de dado que esta irá armazenar. Um tipo especial de variáveis são os ponteiros, isto é, variáveis que armazenam apenas os endereços de outras variáveis. Assim os ponteiros são usados para que se possa acessar de forma indireta uma outra variável. Sabendo-se disto e supondo que o endereço na memória da variável "a" é 100 e o endereço da memória da variável ponteiro é 200, analise o trecho de código abaixo e marque a alternativa que representa a saída do programa:
9 100 200
100 9 200
200 9 100
100 100 200
9 9 200

As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo * proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação:
pt->5.60;
pt->valor=5.60;
pt->próximo.valor=5.60;
pt->próximo->valor=5.60;
pt.valor->5.60;

Prévia do material em texto

CCT0753_EX_A8_201703294742_V8
 
 
 ESTRUTURA DE DADOS 8a aula
 Lupa 
Vídeo
 
PPT
 
MP3
 
 
Exercício: CCT0753_EX_A8_201703294742_V8 24/06/2018 17:51:53 (Finalizada)
Aluno(a): RICARDO ALEXANDRE KEMMERICH
Disciplina: CCT0753 - ESTRUTURA DE DADOS 201703294742
 
 
Ref.: 201704474616
 1a Questão
Na linguagem C++, temos que :
I. Se p é um ponteiro, *p é o valor da variável apontada por p.
II. Um ponteiro pode receber o endereço de uma variável cujo tipo é o mesmo tipo usado na declaração do ponteiro.
III. &v apresenta o endereço da variável v.
Qual a alternativa correta?
Apenas a afirmação I está correta.
Apenas as afirmações II e III estão corretas.
 As afirmações I, II e III estão corretas.
Apenas a afirmação II está correta.
 Apenas as afirmações I e II estão corretas.
 
 
Explicação:
Analisando cada afirmativa :
I. Se p é um ponteiro, *p é o valor da variáel apontada por p.
Verdadeira.
II. Um ponteiro pode receber o endereço de uma variável cujo tipo é o mesmo tipo usado na declaração do ponteiro.
Verdadeira
III. &v apresenta o endereço da variável v.
Verdadeira.
Logo, as afirmativas I, II e III estão corretas.
 
 
 
Ref.: 201703591337
 2a Questão
 Tenho uma lista não ordenada de clientes em que registro apenas a matrícula, o nome, o endereço e o telefone de cada cliente. Como não tenho
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
limites para o crescimento da minha lista, como posso implementar a inserção de um novo cliente na lista, sabendo que cada cliente é do �po Cliente e
a lista é do �po Lista assim definidos :
struct Cliente {
 long int matricula;
 string nome, endereco, tel;
};
struct Lista {
 Cliente c;
 struct Lista *link;
 };
 Lista * insereCliente(Lista *p, Cliente cl)
{
 Lista *novo = new Lista;
 novo->c = cl;
 novo->link = p;
 return novo;
}
Lista * insereCliente(Lista *p) {
 Lista *novo = new Lista;
 Cliente cl;
 novo->c = cl;
 novo->link = p;
 return novo;
}
 Lista * insereCliente(Lista *p, Cliente cl)
{
 Lista *novo ;
 novo->c = cl;
 novo->link = p;
 return novo;
}
 Lista * insereCliente(Lista *p, Cliente cl)
{
 Lista *novo = new Lista;
 novo.c = cl;
 novo.link = p;
 return novo;
}
Lista insereCliente(Lista *p, Cliente cl)
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
{
 Lista novo[];
 novo[0].c = cl;
 novo[0].link = p;
 return novo;
}
 
 
 
 
Ref.: 201703974732
 3a Questão
Em uma aplicação que usa apenas o processo de alocação estática de memória é correto afirmar que:
 Apenas a memória associada às variáveis do tipo vetor é alocada após o inicio da execução da aplicação
Todas as afirmações acima são incorretas
 Toda a memória utilizada pela aplicação não muda durante toda a sua execução
A memória utilizada pela aplicação é totalmente alocada após o inicio de sua execução
A memória utilizada pela aplicação é inicialmente estática, mas pode mudar
 
 
 
Ref.: 201703999742
 4a Questão
Admita a seguinte estrutura de nó de uma lista simplesmente encadeada: struct tno { int chave; tno *proximo; };
Admita, agora, a seguinte declaração de uma variável do tipo nó: tno *no; Qual das alternativas a seguir traz uma
operação válida sobre essa variável?
no->proximo = -10;
 no->proximo = new tno;
no.proximo = no;
no->chave = new int;
no.chave = 5;
 
 
Explicação:
Analisando cada item :
 no.chave = 5;
>> Como no é ponteiro então temos que usar a seta para acessar os campos da
área apontada por no.
 no->proximo = -10;
>> O campo proximo é de ponteiro então não pode receber inteiro.
 no->chave = new int;
>> O campo chave é de inteiro então não deve receber endereço de inteiro. O
operador new aloca memória e retorna o endereço da área alocada.
 no->proximo = new tno;
>> É correto porque o campo proximo é campo de ponteiro e pode receber
outro ponteiro, pode receber NULL ou pode receber endereço da área alocadaFile failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
com new, como foi o caso.
 
no.proximo = no;
>> Incorreto porque não pode se pode usar o ponto para acessar campo de
struct apontada pelo ponteiro no.
 
 
 
Ref.: 201703554623
 5a Questão
 
Seja uma lista encadeada cujo nodo é representado por:
struct nodo{
 int valor;
 nodo prox;
};
 
Esta estrutura possui um ponteiro de referência que aponta sempre para o primeiro nodo da lista, sendo este
declarado como: nodo *lista;
Numa lista encadeada seu último nodo possui o campo prox sempre igual a NULL. Marque a opção que representa o
trecho de código onde um ponteiro auxiliar é capaz de percorre a lista até seu último nodo:
nodo *aux=lista;
 while(lista->prox)aux=aux->prox;
 nodo *aux=lista;
 while(aux->prox)aux->prox=aux->prox;
 nodo *aux=lista;
 while(aux->prox)aux=aux->prox; 
 nodo *aux=lista;
 while(aux)aux->prox=aux; 
 nodo *lista=aux;
 while(aux->prox)aux=aux->prox; 
 
 
Explicação:
nodo *aux=lista;
 while(aux->prox)aux=aux->prox; 
 
 
 
Ref.: 201703592206
 6a Questão
As variáveis são na verdade trecho de memórias que armazenam dados de
diversas naturezas, portanto sempre que declara-se uma variável, na linguagem
C++, é necessário informar o tipo de dado que esta irá armazenar. Um tipo
especial de variáveis são os ponteiros, isto é, variáveis que armazenam apenas
os endereços de outras variáveis. Assim os ponteiros são usados para que se
possa acessar de forma indireta uma outra variável. Sabendo-se disto e supondo
que o endereço na memória da variável "a" é 100 e o endereço da memória da
variável ponteiro é 200, analise o trecho de código abaixo e marque a alternativa
que representa a saída do programa:
 
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
 100 9 200
9 9 200
100 100 200
200 9 100
 9 100 200
 
 
Explicação:
100 ===> endereço da memória da variável a
9 ===> valor da variável a
200 ===> endereço da memória da variável ponteiro
 
 
 
Ref.: 201703965904
 7a Questão
As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas
encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo *
proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira
alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que
corretamente possibilita esta operação:
pt.valor->5.60;
 pt->valor=5.60;
pt->5.60;
pt->próximo.valor=5.60;
 pt->próximo->valor=5.60;
 
 
 
Ref.: 201703352009
 8a Questão
Em uma lista linear simplesmente encadeada.
 O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista.
O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando um
ciclo.
Além do campo relativo ao dado, cada nó possui dois ponteiros,
 Cada nó possui um só ponteiro que referencia o próximo nó da lista.
Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
 
 
 
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
 
 
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js

Mais conteúdos dessa disciplina