Prova Linguagem C

535 palavras 3 páginas
LCI/BSI 2012.1
Algoritmos e Programação II
1a Avaliação

Nome: ________________________________________________________________________________

Questão 1(2,0 pontos) . Considere o seguinte código escrito em linguagem C: void main()

{

int i, j, *p_1, *p_2, **p_3; i = 4;

j = 5;

p_1 = &j;

p_2 = &i;

p_3 = &p_2;

}

Qual é o valor das seguintes expressões ?
a) *p1 - *p2
b) **p3
c) 2*(*p1+2)-(*p2/2)+1
Questão 2 (2,0 pontos). Dado o programa abaixo, complete as Tabelas 1 e 2. main() {

int i, j,k, *p1, *p2, *p3,**pp;

i = 1;

j = 2;

k = 0; p1 = &k;

p2 = &j;

p3 = p1; pp = &p2;
}

Tabela 1
Variável
i j k p1 p2 p3 pp
Conteúdo

Endereço
1000
1004
1020
1080
1090
1100
1200

Tabela 2
Expressão

Resultado i *p1
&p2
*p3
**pp
&p1
*p2
Questão 3 (2,0 pontos). Em uma universidade, necessita-se que seja implementado um sistema onde será realizado o cadastro de todos os alunos. Com base nisso, criou-se a seguinte biblioteca contendo as definições da estrutura utilizada para armazenar os dados. typedef struct aluno Aluno;

// Operação para inicializar um aluno. Deve reservar o espaço de memória necessário para criar a estrutura aluno e preencher os campos nome e matrícula (recebidos como parâmetro).
Aluno * inicializa(char *, char *);

// Operação para alteração de cadastro de aluno. Altera o campo nome do aluno recebido como parâmetro. void alterar_nome(Aluno *, char *);

Com base nas descrições definidas nos comentários contidos no arquivo “aluno.h”, implemente as duas operações sobre o TAD aluno. Para isso, complete o programa “aluno.c” definido abaixo.
#include “aluno.h”

struct aluno{ char nome[50]; char matricula[10];
};

Aluno p* inicializa(char *nome, char *mat)
{

Aluno* p = (Aluno*) malloc(sizeof(Aluno));

p->nome[] = 0; p->mat[] = 0; return p;
}

void alterar_nome(Aluno *aluno, char *nome)
{
aluno->nome = nome;

}

Relacionados

  • Linguagem C - Prova A.S.
    327 palavras | 2 páginas
  • Cap 01 Introdu O E Conceitos B Sicos
    7795 palavras | 32 páginas
  • Algoritmo Ecplusplus Aula3
    1002 palavras | 5 páginas
  • tec web
    889 palavras | 4 páginas
  • programaçao linguagem c++
    1693 palavras | 7 páginas
  • matematica
    2313 palavras | 10 páginas
  • biologia
    2117 palavras | 9 páginas
  • Linguagem
    1419 palavras | 6 páginas
  • 2 Prova BD
    494 palavras | 2 páginas
  • Linguagem c
    1346 palavras | 6 páginas