Buscar

Estrutura de dados Ex.2

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

1a Questão (Ref.: 201401954424) 
 
Considera a FUNÇÃO abaixo: 
 
void inverte(int &x, int &y) 
{ int aux = x; 
x = y; 
y = aux; } 
Quais valores serão impressos na tela quando o seguinte programa principal for executado? 
int main() 
{ int a = 18, b = 28; 
inverte(a, b); 
cout << a <<" e "<< b; 
return 0; } 
 
 
18 e 18 
 
28 e 08 
 
08 e 18 
 28 e 18 
 
18 e 28 
 
 2a Questão (Ref.: 201401187197) 
 
Assinale a opção certa. 
 Quando não se escreve o protótipo de uma função ... 
 
 
A chamada da função não poderá ser feita em qualquer hipótese. 
 
O programa não funcionará de forma alguma. 
 É preciso definir a função antes do programa principal. 
 
A chamada da função poderá ser feita em qualquer hipótese. 
 
A definição da função deverá ser escrita, obrigatoriamente, após o programa principal. 
 
 3a Questão (Ref.: 201401120061) 
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de 
funções que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e 
marque corretamente a alternativa que descreve as funcionalidades desta. 
int funcao(float v[], float vl, int n) 
{ 
 for (int i = 0; i < n; i++) 
 if (v[i] == vl) 
 return i; 
 return -1; 
} 
 
 
Retorna -1 se o valor de n foi encontrado. 
 
Retorna -1 se o valor de vl estiver dentro de v. 
 Retorna a posição de v se o valor vl foi encontrado. 
 
Retorna o valor de vl se o valor n foi encontrado. 
 
Resulta em erro, se o valor de vl não estiver dentro de v. 
 
 4a Questão (Ref.: 201401322295) 
 
Funções são instrumentos de modularização de programas, que tem como finalidade tornar o código mais 
legível, isto é mais fácil de entender, evita replicação de instruções e permite o reuso das funções em outros 
programas. Então considere o seguinte código: 
#include< iostream > 
using namespace std; 
 
int main( ) 
{ 
 float a=10.0; 
 float b=4.0; 
 cout < < media(a,b); 
 return 0; 
} 
float media(float x, float y) { return (x+y)/2;} 
 
Marque a alternativa CORRETA: 
 
 
O código compila normalmente e apresenta como resultado o valor 7.0 
 
O código não compila, pois a função float media(float x, float y) retorna um valor que seria ser 
armazenado em uma variável do tipo float e só então poderia ser usado o comando cout para exibir o 
resultado. 
 O código não compila, pois há necessidade de se declarar float media(float, float) como protótipo da 
função float media(float x, float y)antes da função principal. 
 
O código não compila, pois os parâmetros usados na chamada da função deveriam ser "x" e "y"; 
porém a chamada se deu com identificadores "a" e "b". 
 
O código compila normalmente, pois como a descrição da função float media(float x, float y)está 
posicionada após a função int main ( ), não há necessidade do uso de protótipos. 
 
 5a Questão (Ref.: 201401111580) 
 
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função: 
 
 
Por teste e por reforço. 
 
Por memória e por disco. 
 Por valor e por referência 
 
Por inferência e por valor. 
 
Por reforço e por referência. 
 
 6a Questão (Ref.: 201401708338) 
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se 
a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas. 
Esta técnica, também chamada de modularização, tem como principal elemento: 
 
 As funções 
 
As Filas 
 
Os Grafos 
 
As Estruturas de Dados 
 
Os Vetores 
 
 
 7a Questão (Ref.: 201401795964) 
 
Ao definirmos uma função, podemos afirmar: 
I Toda função tem parâmetros 
II Quando nada retorna, o tipo é void 
III Quando todos os parâmetros são do mesmo tipo, é suficiente usar o tipo uma vez e separar os 
nomes dos parâmetros por vírgulas 
IV Na passagem por valor, o endereço da variável da função chamadora é passado para a função 
chamada 
Após uma análise das afirmativas acima, escolha a opção correta. 
 
 Somente II III e IV estão corretas 
 Somente I e II estão corretas 
 Somente II e III estão corretas 
 Somente II está correta 
 Somente II e IV estão corretas 
 
 
 
 
 
 
 
 
 
 
 8a Questão (Ref.: 201401359845) 
 
 
 O programa executa perfeitamente independente da ordem das funções já que existem os seus 
protótipos. 
 O programa não executa corretamente, pois o protótipo da função media( ) não apresenta a 
identificação dos parâmetros, mas apenas os tipos dos mesmos. 
 O programa executa perfeitamente, mas não mostra o valor da media já que esta função não 
foi chamada na função main( ). 
 O programa não executa corretamente, pois os protótipos estão fora da ordem em que as 
funções são descritas. 
 O programa não executa corretamente pois as funções devem ser descritas antes da função 
main(), para que o compilador consiga reconhecê-las.

Outros materiais