Buscar

2014820_10283_alex-ed1-semana4-parte2-TAD

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

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

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ê viu 3, do total de 8 páginas

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

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

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ê viu 6, do total de 8 páginas

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

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

Prévia do material em texto

Estrutura de Estrutura de 
Dados IDados IDados IDados I
Prof. Alex Salgado
Curso: Sistemas de Informação
1
Agenda Agenda –– semana4semana4
Parte 2
• Tipo Abstrado de Dados…continuação
• Alocação Dinâmica vs Estática
• Ponteiros para TAD
• Struct e typedef
• Exercícios
2
1.31.3--ExercícioExercício
• Crie um programa para alocar um vetor de 10 posições 
dinamicamente.
• Se não existir memória suficiente, sair do programa e mandar uma 
mensagem para o usuário “memória insuficiente”;
• Preencher os elementos do vetor com valores de 1 a 10;
• Imprimir o valor do vetor de posição 8;
• Liberar a memória alocada.
3
Declaração de TiposDeclaração de Tipos
4
Ponteiros para Tipos Ponteiros para Tipos 
EstruturadosEstruturados
5
2.12.1--ExercícioExercício
• Criar um tipo “TPessoa” (typedef struct) que represente 
uma pessoa, contento int matricula, float valorHora.
• Criar uma função que crie e retorne uma instância de 
TPessoa(alocação dinâmica).
• Protótipo: TPessoa *criaNovoReg()
• Dentro do programa principal:• Dentro do programa principal:
o Criar uma variável que seja um ponteiro para este novo tipo;
o Chame a função que retorna uma instância de Tpessoa e atribua 
a este ponteiro;
o Preencha os dados dessa pessoa através do teclado no programa 
principal;
o Imprima os 2 valores lidos;
o Libere a memória deste ponteiro.
6
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int matricula;
float valorHora;
} TPessoa;
TPessoa *criaNovoReg()
{
TPessoa *t = (TPessoa *)malloc(sizeof(TPessoa));
t->matricula = 0;
t->valorHora = 0.0;
return t;return t;
}
int main()
{
TPessoa *func;
func = criaNovoReg();
scanf("%d",&func->matricula);
scanf("%f",&func->valorHora);
printf("aluno matricula = %d\n", func->matricula);
printf("aluno valorHora = %f\n", func->valorHora);
free(func);
return 0;
}
8/20/2014 7
2.22.2--ExercícioExercício
• Criar um tipo “TPessoa” (typedef struct) que represente 
uma pessoa, contento int matricula, float valorHora.
• Criar uma função que crie e retorne uma instância de 
TPessoa(alocação dinâmica).
• Protótipo: TPessoa *criaNovoReg()
• Dentro do programa principal:• Dentro do programa principal:
o Criar uma variável que seja um ponteiro para este novo tipo;
o Chame a função que retorna uma instância de Tpessoa e atribua 
a este ponteiro;
o Preencha os dados dessa pessoa através do teclado no programa 
principal;
o Calcule o salário referente a 160 horas de trabalho;
o Imprima o salário calculado;
o Libere a memória deste ponteiro.
8

Outros materiais

Materiais relacionados

Perguntas relacionadas

Materiais recentes

Perguntas Recentes