Pages

Mostrando postagens com marcador ponteiro. Mostrar todas as postagens
Mostrando postagens com marcador ponteiro. Mostrar todas as postagens

Questão EPO - Ponteiro

Qual a diferença entre os operadores & e *?

a) & fornece o endereço de determinada variável, e * acessa o conteúdo de uma variável, cujo endereço é o valor do ponteiro.
b) * fornece o endereço de determinada variável, e & acessa o conteúdo de uma variável, cujo endereço é o valor do ponteiro.
c) & fornece o conteúdo de determinada variável, e * acessa o valor do ponteiro
d) * é o valor da variável ponteiro, & acessa o conteúdo da variável para onde o ponteiro aponta
e) NDA

Fonte: http://cirosantos.com/lp/LPR/ponteiro.pdf

Questão EPO - Ponteiro

Ao lidar com arranjos, uma operação crítica é o cálculo do endereço para o elemento desejado no arranjo, o que é feito através da manipulação de ponteiros. De fato, em algumas linguagens (como C), os conceitos de "arranjo" e "ponteiro" são intercambiáveis. Em outras estruturas de dados, como listas encadeadas, ponteiros são usados como referências para intercalar cada elemento da estrutura com seus vizinhos (seja anterior ou próximo).    Ponteiros também são utilizados para simular a passagem de parâmetros por referência em linguagens que não oferecem essa construção (como o C). Isso é útil se desejamos?

a) que uma modificação em um valor não seja feito pela função chamada e seja visível pela função que a chamou, ou também para que uma função possa retornar múltiplos valores.

b) que uma modificação em um valor feito pela função chamada não seja visível pela função que a chamou, ou também para que uma função possa retornar múltiplos valores.

c) que uma modificação em um valor feito pela função chamada seja visível pela função que a chamou, ou também para que uma função possa retornar múltiplos valores.

d) que uma modificação de vários valor não seja feito pela função chamada e seja visível pela função que a chamou, ou também para que uma função possa retornar múltiplos valores.

Referencia: http://pt.wikipedia.org/wiki/Ponteiro_(programa%C3%A7%C3%A3o)

Questão EPO - Ponteiro

Seja a sequência de instruções em um programa:

    int *pti;
    int i = 10;
    pti = &i;

Qual afirmativa é FALSA?

a) pti armazena o endereço de i
b) *pti é igual a 10
c) ao se executar *pti = 20; i passará a ter o valor 20
d) pti é igual a 10
e) NDA

Fonte: http://www.brasilacademico.com/apostilas/ED_03_Ponteiro_ex.pdf

Questão EPO - Ponteiro

    int a, b, *p;
 
    a = 50;
    *p = a;
    p = *p;
    b = p;
 
    printf("%d, %d\n", &a, b); 
    
Qual é o resultado do printf?

a) Endereço de b e endereço de p?
b) Endereço de a e endereço de b?
c) Endereço de a e valor de a?
d) Valor de p e endereço de p?
e) N.D.A

Questão EPO - Ponteiro

Assumindo que o endereço de NUM foi atribuido a um ponteiro PNUM, qual das seguintes expressoes é a verdadeira:

a) NUM = &PNUM
b) NUM = *PNUM
c) PNUM = NUM(*PNUM)
d) PNUM = &NUM
e) N.D.A.

Questão EPO - Ponteiro

O que será impresso nos 3 printf do programa abaixo:

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){   
    int vetor[] = { 10, 20, 30, 40, 50 };
    int *p1;
    p1 = &vetor[2];
    printf("%d\n", *p1);
    p1++;
    printf("%d\n", *p1);
    p1 = p1 + 1;
    printf("%d\n", *p1);
    system("PAUSE");
    return 0;
}

a) 10, 20,30;
b) 20, 30,40;
c) 30, 40,50;
d) 20, 40,50;
e) N.D.A

Referencia: http://equipe.nce.ufrj.br/adriano/c/apostila/ponte.htm

Questão EPO - Ponteiro

O que é do tipo int na instrução int *p?

a) A variável p;
b) O endereço de p;
c) A variável apontada por p;
d) O endereço da variável apontada por p;
e) N.D.A.

Fonte: Questão extraída e adaptada do livro "Treinamento em linguagem C++ - Módulo2"  Disponível na Biblioteca do IFSP – Bragança Paulista.

Questão EPO - Ponteiro

Seja a seguinte sequencia de instruções em um programa C:

    int *pti;
    int i = 10;
    pti = &i;

Qual afirmativa é falsa?

a) pti armazena o endereço de i
b) *pti é igual a 10
c) ao se executar *pti = 20; i passará a ter o valor 20
d) ao se alterar o valor de i, *pti será modificado
e) NDA.

Fonte: http://www.brasilacademico.com/apostilas/ED_03_Ponteiro_ex.pdf  Exercicio 12.

Questão EPO - Ponteiro

int main() {
    int *p = malloc(sizeof(int));
    int v;
    *p = 10;
    *p += 5;
    (*p)++;
    v=*p++;
    printf("%d\n", *p);
}

O código acima imprime qual valor?
a) 10
b) 15
c) 16
d) 17
e) n.d.a.

Fonte:
Página 51
http://www.cenapad.unicamp.br/servicos/treinamentos/apostilas/apostila_C.pdf

Questão EPO - Ponteiro

Utilizando a aritmética de ponteiros:

main ()
    {
        int *ponteiro, vetor_inteiros[4] = {0, 10, 20, 30};
        ponteiro = &vetor_inteiros[0];
        ponteiro+= 2;
        printf(“Valor apontado: %d \n”, *ponteiro);
        ...
    }

É correto afirmar:

a) O conteúdo do ponteiro é 20.
b) O ponteiro possui 4 posições.
c) O conteúdo apontado pelo ponteiro é o endereço do vetor pulando 2 endereços desde a primeira posição do vetor.
d) O compilador C reconhece o tipo do ponteiro e salta uma quantidade em bytes equivalente ao tipo int, seguindo a soma realizada no programa.
e) nda

Fonte: http://hermes.ucs.br/carvi/cent/dpei/snsoares/ELE0219/Textos/a05ex05.pdf

Questão EPO - Ponteiro

O seguinte programa apresenta um erro de sintaxe :

#include <iostream>
using namespace std;
int main ( )
    {
    const VAL = 987;
    int i = 987;
    const *p = VAL;
    cout<< *p;
    return 0;
}

Para obter a impressão do conteúdo da variável VAL, o programa deve ser reescrito com a sintaxe:

a) int *p = VAL;
b) int i = &VAL;
c) const *p = &VAL;
d) int i = &p;
e) N.D.A.

Fonte: Victorine Viviane Mizrahi, Treinamento em linguagem C++, Módulo 1 2º Edição, Person Prentice Hall Editora, São Paulo, 2006, ISBN 9788576050452,
Páginas 178 e 179 (Adaptação de duas questões).

Questão EPO - Ponteiro

Sobre ponteiros (*), é correto afirmar que:

I. O ponteiro é um tipo de dado que armazena um endereço.
II. Os ponteiros são necessários para a alocação dinâmica de memória, para sequências de dados alocados e para a passagem ou o retorno através referência.
III. O ponteiro não possui um tipo.

a) Apenas a I esta correta.
b) A I e a II estão corretas.
c) A III esta correta.
d) Todas estão corretas.
e) N.D.A

Fonte: http://pt.wikipedia.org/wiki/Ponteiro_%28programa%C3%A7%C3%A3o%29

Questão EPO - Ponteiro

Qual será a saída do seguinte programa?

#include <stdio.h>
int main ()
{
    int i = 3;
    int *j;
    int **k;
    j = &i;
    k = &j;
    printf("%u %u %u",i,j,k);
    getch();
}

a)  3, endereço de j, endereço de j;
b)  3,3,3;
c)  Erro de compilação;
d)  3, endereço de j, endereço de k;
e)  N.D.A.

Referência:
http://translate.google.com.br/translate?hl=pt-BR&langpair=en|pt&u=http://cquestionbank.blogspot.com/2009/09/multiple-choice-questions-in-c.html

Questão EPO - Ponteiro

Escolha a alternativa que apresenta a sequência correta que será impressa na tela:


a) 050
b) 4520
c) 055
d) 455
e) NDA.

Questão EPO - Ponteiro

O que o seguinte código imprime?

#include <stdlib.h>
#include <stdio.h>
 int main(){
      int num,valor;
    int *p;
    num = 55;
    p = &num
    valor = *p
    printf("%d  % p  %d \n",valor,p,*p);
    system("PAUSE");
}

a) O código não imprime nada, pois tem um erro de sintaxe.
b) Endereço do ponteiro, 55 e 55.
c) 55, o endereço do ponteiro e 55.
d) 55, 55 e 55.
e) NDA.

Fonte: http://www.mtm.ufsc.br/~azeredo/cursoC/aulas/c620.html

Questão EPO - Ponteiro

Qual das instruções abaixo é correta para declarar um ponteiro para inteiro?

a) int _ptr x;
b) int *ptr;
c) *int ptr;
d) *x;    
e) Nenhuma das anteriores

Questão EPO - Ponteiro

Assumindo que o endereço de num foi atribuído a um ponteiro pnum, qual das seguintes expressões é verdadeira?

a) num == &pnum;
b) num == *pnum;
c) pnum == *num;
d) *pnum == &num;
e) n.d.a;

Fontes:
http://www.brasilacademico.com/apostilas/ED_03_Ponteiro_ex.pdf
http://www.brasilacademico.com/apostilas/Ed_03_Ponteiro_resp.pdf

Questão EPO - Ponteiro

Considere as seguintes afirmações:

I. Em um ponteiro, o operando do operador de endereço deve ser uma variavel.
II. Em um ponteiro, o operador de endereço não pode ser aplicado a constantes, expressões ou a variáveis declaradas com a classe de armazenamento Register.
III. O operador * pode ser chamado de operador de desreferenciamneto.

Assinale a alternativa correta:

a) Apenas I é correta
b) Apenas I e II são corretas
c) I, II e III são corretas
d) Apenas II e III são corretas
e) N.D.A.

Fonte: referenciada em um trecho do livro "Como programar em C"- Deitel

Questão EPO - Ponteiro

Qual das alternativas corresponde ao código:

int main () {
    float matrx [50][50];
    float *p;
    int count;
    p=matrx[0];
    for (count=0;count<2500;count++) {
        *p=0.0;
        p++;
    }
    return(0);
}

a) O programa, cada vez que se faz matrx[i][j] o programa tem que calcular o deslocamento para dar ao ponteiro. Ou seja, o programa tem que calcular 2500 deslocamentos.
b) O programa calcula 2500 deslocamentos para dar ao ponteiro, e o seu resultado é 0.
c) O  único cálculo feito é o de um incremento de ponteiro.
d) A varredura seqüencial do ponteiro faz que todos os valores da matriz recebam 0. Num calculo de  2500 de deslocamento para o ponteiro.E o uso do for  auxilia  zerar a matrx[50][50].
e) NDA.

Fonte: Apostila: Curso de  Linguagem C UFMG Universidade Federal de Minas Gerais.pagina 55

Questão EPO - Ponteiro

Para a Linguagem C, um vetor é um Ponteiro para a sua primeira posição (índice 0). Com base nessa premissa, julgue as sentenças a seguir:

I - É possível acessar o endereço de uma posição de um vetor através de  & v[i] e *(v+i);
II - Para o C, int v[ ]int *v são sinônimos;
III - É possível acessar o conteúdo de uma posição de um vetor através de  v[i] e *(v+i);

a) Todas as sentenças estão corretas;
b) Apenas I e II estão corretas;
c) Apenas II e III estão corretas;
d) Apenas I e III estão corretas;
e) NDA;

Fontes:
Centoducatte,Paulo Cesar em http://www.ic.unicamp.br/~ducatte/mc102/aula13..pdf
Bergo,  Felipe P.G. em http://www.liv.ic.unicamp.br/~bergo/mc102e/slide-t14.pdf
 
Copyright (c) 2010. Blogger templates by Bloggermint