Buscar

Registros e Ponteiros aula9 - Cláudio

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 77 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

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 6, do total de 77 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

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 9, do total de 77 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

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

TT 130 – Algoritmos e
Programac¸a˜o de Computadores I
Prof. Ramom Santana Rebouc¸as
ramom sr@gmail.com
Aula 09 e 10
Structs e Ponteiros
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Conteu´do
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Estrutura (struct) e´ um grupo de varia´veis relacionadas
entre si.
Structs podem conter varia´veis de diversos tipos de
dados.
Uma struct tem a seguinte forma:
struct tipo{
(deckarac¸a˜o de varia´veis)
};
A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Definic¸a˜o
Para mais clareza, vejamos o seguinte exemplo de
estrutura:
struct funcionario{
char nome[20];
int idade;
char sexo;
};
No exemplo acima, temos:
1 A instruc¸a˜o ’struct’ para definir nossa estrutura.
2 Demos o nome ’funcionario’ para o tipo da nossa
estrutura.
3 Dentro da nossa estrutura, definimos as varia´veis
desejadas.
struct tipo{
(deckarac¸a˜o de varia´veis)
}
4 A palavra chave, struct, e´ usada para definir a estrutura.
Em seguida damos o nome do tipo que queremos para
nossa estrutura, e dentro dela, declaramos as varia´veis
que desejamos.
Declarac¸a˜o
Uma vez definida a estrutura, podemos declara´-la:struct funcionario f1;
A instruc¸a˜o acima, declara uma estrutura f1, do tipo
funciona´rio.
Na pra´tica, declarar uma estrutura, e´ declarar todas as
varia´veis que esta˜o contidas nela.
Ou seja, no exemplo acima, estamos declarando as
varia´veis ’nome, idade e sexo’ para a estrutura f1, do
tipo funciona´rio.
Declarac¸a˜o
Uma vez definida a estrutura, podemos declara´-la:
struct funcionario f1;
A instruc¸a˜o acima, declara uma estrutura f1, do tipo
funciona´rio.
Na pra´tica, declarar uma estrutura, e´ declarar todas as
varia´veis que esta˜o contidas nela.
Ou seja, no exemplo acima, estamos declarando as
varia´veis ’nome, idade e sexo’ para a estrutura f1, do
tipo funciona´rio.
Declarac¸a˜o
Uma vez definida a estrutura, podemos declara´-la:
struct funcionario f1;
A instruc¸a˜o acima, declara uma estrutura f1, do tipo
funciona´rio.
Na pra´tica, declarar uma estrutura, e´ declarar todas as
varia´veis que esta˜o contidas nela.
Ou seja, no exemplo acima, estamos declarando as
varia´veis ’nome, idade e sexo’ para a estrutura f1, do
tipo funciona´rio.
Declarac¸a˜o
Uma vez definida a estrutura, podemos declara´-la:
struct funcionario f1;
A instruc¸a˜o acima, declara uma estrutura f1, do tipo
funciona´rio.
Na pra´tica, declarar uma estrutura, e´ declarar todas as
varia´veis que esta˜o contidas nela.
Ou seja, no exemplo acima, estamos declarando as
varia´veis ’nome, idade e sexo’ para a estrutura f1, do
tipo funciona´rio.
Declarac¸a˜o
Uma vez definida a estrutura, podemos declara´-la:
struct funcionario f1;
A instruc¸a˜o acima, declara uma estrutura f1, do tipo
funciona´rio.
Na pra´tica, declarar uma estrutura, e´ declarar todas as
varia´veis que esta˜o contidas nela.
Ou seja, no exemplo acima, estamos declarando as
varia´veis ’nome, idade e sexo’ para a estrutura f1, do
tipo funciona´rio.
Inicializac¸a˜o
Para atribuir valores as varia´veis que esta˜o dentro de
uma estrutura, faz-se:
estrutura.var=valor;
Vejamos como ficaria no nosso exemplo do funciona´rio:
strcpy(f1.nome, ”Eduardo”);
f1.idade = 27;
f1.sexo = ’M’;
Tambe´m podemos atribuir valores no momento da
declarac¸a˜o da estrutura:
struct funcionario f1={”Eduardo”, 27, ’M’};
Inicializac¸a˜o
Para atribuir valores as varia´veis que esta˜o dentro de
uma estrutura, faz-se:
estrutura.var=valor;
Vejamos como ficaria no nosso exemplo do funciona´rio:
strcpy(f1.nome, ”Eduardo”);
f1.idade = 27;
f1.sexo = ’M’;
Tambe´m podemos atribuir valores no momento da
declarac¸a˜o da estrutura:
struct funcionario f1={”Eduardo”, 27, ’M’};
Inicializac¸a˜o
Para atribuir valores as varia´veis que esta˜o dentro de
uma estrutura, faz-se:
estrutura.var=valor;
Vejamos como ficaria no nosso exemplo do funciona´rio:
strcpy(f1.nome, ”Eduardo”);
f1.idade = 27;
f1.sexo = ’M’;
Tambe´m podemos atribuir valores no momento da
declarac¸a˜o da estrutura:
struct funcionario f1={”Eduardo”, 27, ’M’};
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
Vetor de estruturas
Considere definida uma struct do tipo estrutura.
A seguinte instruc¸a˜o, declara um vetor de n estruturas
do mesmo tipo:
struct estrutura vetor[n];
A inicializac¸a˜o das estruturas vetor[i], com
i = 0, 1, 2, . . . , n− 1, funciona exatamente do mesmo
modo como visto. Ou seja, se ’var’ e´ uma varia´vel
dentro da estrutura v[i], basta fazer
v[i].var = valor
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Exerc´ıcios
1 Considere a seguinte estrutura:
struct data{
char nome[20];
int d, m, a;
};. Fac¸a um programa inicializando a estrutura, e imprima o nome
e a idade da pessoa.
2 Com a estrutura da questa˜o anterior, inicialize estruturas para
duas pessoas, e diga qual delas e´ a mais velha.
3 Considere a seguinte estrutura:
struct Produto{
char nome[10];
float preco;
int quantidade;
};. Fac¸a um programa que ordene os produtos por:
a. Ordem alfabe´tica.
b. Ordem crescente de prec¸o.
c. Ordem crescente de quantidade.
Exerc´ıcios
1 Considere a seguinte estrutura:
struct data{
char nome[20];
int d, m, a;
};. Fac¸a um programa inicializando a estrutura, e imprima o nome
e a idade da pessoa.
2 Com a estrutura da questa˜o anterior, inicialize estruturas para
duas pessoas, e diga qual delas e´ a mais velha.
3 Considere a seguinte estrutura:
struct Produto{
char nome[10];
float preco;
int quantidade;
};. Fac¸a um programa que ordene os produtos por:
a. Ordem alfabe´tica.
b. Ordem crescente de prec¸o.
c. Ordem crescente de quantidade.
Exerc´ıcios
1 Considere a seguinte estrutura:
struct data{
char nome[20];
int d, m, a;
};. Fac¸a um programa inicializando a estrutura, e imprima o nome
e a idade da pessoa.
2 Com a estrutura da questa˜o anterior, inicialize estruturas para
duas pessoas, e diga qual delas e´ a mais velha.
3 Considere a seguinte estrutura:
struct Produto{
char nome[10];
float preco;
int quantidade;
};. Fac¸a um programa que ordene os produtos por:
a. Ordem alfabe´tica.
b. Ordem crescente de prec¸o.
c. Ordem crescente de quantidade.
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Introduc¸a˜o
Ponteiros sa˜o varia´veis que armazenam enderec¸os de memo´ria
como valores.
Um ponteiro conte´m o enderec¸o de uma varia´vel que possui um
valor espec´ıfico. Desse modo, pode-se dizer que uma varia´vel faz
refereˆncia direta a um valor espec´ıfico, enquanto um ponteiro faz
uma refereˆncia indireta.
Como qualquer outra varia´vel, um ponteiro deve ser declarado
antes de ser utilizado.
Para declarar uma varia´vel ponteiro, informamos o tipo de varia´velpara qual ele vai apontar, inserimos o s´ımbolo * e por conseguinte,
o nome que se deseja dar ao ponteiro.
Introduc¸a˜o
Ponteiros sa˜o varia´veis que armazenam enderec¸os de memo´ria
como valores.
Um ponteiro conte´m o enderec¸o de uma varia´vel que possui um
valor espec´ıfico. Desse modo, pode-se dizer que uma varia´vel faz
refereˆncia direta a um valor espec´ıfico, enquanto um ponteiro faz
uma refereˆncia indireta.
Como qualquer outra varia´vel, um ponteiro deve ser declarado
antes de ser utilizado.
Para declarar uma varia´vel ponteiro, informamos o tipo de varia´vel
para qual ele vai apontar, inserimos o s´ımbolo * e por conseguinte,
o nome que se deseja dar ao ponteiro.
Introduc¸a˜o
Ponteiros sa˜o varia´veis que armazenam enderec¸os de memo´ria
como valores.
Um ponteiro conte´m o enderec¸o de uma varia´vel que possui um
valor espec´ıfico. Desse modo, pode-se dizer que uma varia´vel faz
refereˆncia direta a um valor espec´ıfico, enquanto um ponteiro faz
uma refereˆncia indireta.
Como qualquer outra varia´vel, um ponteiro deve ser declarado
antes de ser utilizado.
Para declarar uma varia´vel ponteiro, informamos o tipo de varia´vel
para qual ele vai apontar, inserimos o s´ımbolo * e por conseguinte,
o nome que se deseja dar ao ponteiro.
Introduc¸a˜o
Ponteiros sa˜o varia´veis que armazenam enderec¸os de memo´ria
como valores.
Um ponteiro conte´m o enderec¸o de uma varia´vel que possui um
valor espec´ıfico. Desse modo, pode-se dizer que uma varia´vel faz
refereˆncia direta a um valor espec´ıfico, enquanto um ponteiro faz
uma refereˆncia indireta.
Como qualquer outra varia´vel, um ponteiro deve ser declarado
antes de ser utilizado.
Para declarar uma varia´vel ponteiro, informamos o tipo de varia´vel
para qual ele vai apontar, inserimos o s´ımbolo * e por conseguinte,
o nome que se deseja dar ao ponteiro.
Declarac¸a˜o e inicializac¸a˜o de varia´veis ponteiro
Portanto, declara-se uma varia´vel ponteiro da
seguinte forma:
tipo *ponteiro;
Veja os seguintes exemplos de declarac¸a˜o:
int *pont; Cria um uma varia´vel ponteiro que
armazena enderec¸o de memo´ria de uma
varia´vel do tipo inteiro.
float *numero; Cria uma varia´vel ponteiro que
armazena enderec¸o de memo´ria para uma
varia´vel do tipo float.
Declarac¸a˜o e inicializac¸a˜o de varia´veis ponteiro
Portanto, declara-se uma varia´vel ponteiro da
seguinte forma:
tipo *ponteiro;
Veja os seguintes exemplos de declarac¸a˜o:
int *pont; Cria um uma varia´vel ponteiro que
armazena enderec¸o de memo´ria de uma
varia´vel do tipo inteiro.
float *numero; Cria uma varia´vel ponteiro que
armazena enderec¸o de memo´ria para uma
varia´vel do tipo float.
Declarac¸a˜o e inicializac¸a˜o de varia´veis ponteiro
Portanto, declara-se uma varia´vel ponteiro da
seguinte forma:
tipo *ponteiro;
Veja os seguintes exemplos de declarac¸a˜o:
int *pont; Cria um uma varia´vel ponteiro que
armazena enderec¸o de memo´ria de uma
varia´vel do tipo inteiro.
float *numero; Cria uma varia´vel ponteiro que
armazena enderec¸o de memo´ria para uma
varia´vel do tipo float.
Declarac¸a˜o e inicializac¸a˜o de varia´veis ponteiro
Portanto, declara-se uma varia´vel ponteiro da
seguinte forma:
tipo *ponteiro;
Veja os seguintes exemplos de declarac¸a˜o:
int *pont; Cria um uma varia´vel ponteiro que
armazena enderec¸o de memo´ria de uma
varia´vel do tipo inteiro.
float *numero; Cria uma varia´vel ponteiro que
armazena enderec¸o de memo´ria para uma
varia´vel do tipo float.
Operadores de ponteiro
Existem dois operadores relacionados a ponteiros:
O operador ’&’ retorna o enderec¸o de memo´ria de uma
varia´vel.
int x=90;
int *pontx;
pontx = &x;
O operador ’*’ acessa o conteu´do do enderec¸o indicado
pelo ponteiro.
Tambe´m podemos fazer comparac¸a˜o entre ponteiros ou
entre os conteu´dos dos espac¸os para onde eles apontam.
Cuidado! Na˜o se pode atribuir um valor para o enderec¸o
apontado pelo ponteiro, sem antes ter certeza de que o
enderec¸o e´ va´lido!
Operadores de ponteiro
Existem dois operadores relacionados a ponteiros:
O operador ’&’ retorna o enderec¸o de memo´ria de uma
varia´vel.
int x=90;
int *pontx;
pontx = &x;
O operador ’*’ acessa o conteu´do do enderec¸o indicado
pelo ponteiro.
Tambe´m podemos fazer comparac¸a˜o entre ponteiros ou
entre os conteu´dos dos espac¸os para onde eles apontam.
Cuidado! Na˜o se pode atribuir um valor para o enderec¸o
apontado pelo ponteiro, sem antes ter certeza de que o
enderec¸o e´ va´lido!
Operadores de ponteiro
Existem dois operadores relacionados a ponteiros:
O operador ’&’ retorna o enderec¸o de memo´ria de uma
varia´vel.
int x=90;
int *pontx;
pontx = &x;
O operador ’*’ acessa o conteu´do do enderec¸o indicado
pelo ponteiro.
Tambe´m podemos fazer comparac¸a˜o entre ponteiros ou
entre os conteu´dos dos espac¸os para onde eles apontam.
Cuidado! Na˜o se pode atribuir um valor para o enderec¸o
apontado pelo ponteiro, sem antes ter certeza de que o
enderec¸o e´ va´lido!
Operadores de ponteiro
Existem dois operadores relacionados a ponteiros:
O operador ’&’ retorna o enderec¸o de memo´ria de uma
varia´vel.
int x=90;
int *pontx;
pontx = &x;
O operador ’*’ acessa o conteu´do do enderec¸o indicado
pelo ponteiro.
Tambe´m podemos fazer comparac¸a˜o entre ponteiros ou
entre os conteu´dos dos espac¸os para onde eles apontam.
Cuidado! Na˜o se pode atribuir um valor para o enderec¸o
apontado pelo ponteiro, sem antes ter certeza de que o
enderec¸o e´ va´lido!
Operadores de ponteiro
Existem dois operadores relacionados a ponteiros:
O operador ’&’ retorna o enderec¸o de memo´ria de uma
varia´vel.
int x=90;
int *pontx;
pontx = &x;
O operador ’*’ acessa o conteu´do do enderec¸o indicado
pelo ponteiro.
Tambe´m podemos fazer comparac¸a˜o entre ponteiros ou
entre os conteu´dos dos espac¸os para onde eles apontam.
Cuidado! Na˜o se pode atribuir um valor para o enderec¸o
apontado pelo ponteiro, sem antes ter certeza de que o
enderec¸o e´ va´lido!
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Vetores e ponteiros
Uma varia´vel vetor, assim como um ponteiro, armazena
um enderec¸o de memo´ria: O enderec¸o de in´ıcio do
vetor.
Por exemplo, na declarac¸a˜o ’int v[5];’, a varia´vel v,
conte´m o enderec¸o de memo´ria do in´ıcio do vetor
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[ ] = {1,2,3,4,5};
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++)
pont[i]=2*i-1;
Vetores e ponteiros
Uma varia´vel vetor, assim como um ponteiro, armazena
um enderec¸o de memo´ria: O enderec¸o de in´ıcio do
vetor.
Por exemplo, na declarac¸a˜o ’int v[5];’, a varia´vel v,
conte´m o enderec¸o de memo´ria do in´ıcio do vetor
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[ ] = {1,2,3,4,5};
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++)
pont[i]=2*i-1;
Vetores e ponteiros
Uma varia´vel vetor, assim como um ponteiro, armazena
um enderec¸o de memo´ria: O enderec¸o de in´ıcio do
vetor.
Por exemplo, na declarac¸a˜o ’int v[5];’, a varia´vel v,
conte´m o enderec¸o de memo´ria do in´ıcio do vetor
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[ ] = {1,2,3,4,5};
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++)
pont[i]=2*i-1;
Vetores e ponteiros
Uma varia´vel vetor, assim como um ponteiro, armazena
um enderec¸o de memo´ria: O enderec¸o de in´ıcio do
vetor.
Por exemplo, na declarac¸a˜o ’intv[5];’, a varia´vel v,
conte´m o enderec¸o de memo´ria do in´ıcio do vetor
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[ ] = {1,2,3,4,5};
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++)
pont[i]=2*i-1;
Diferenc¸a
Uma varia´vel vetor, diferente de um ponteiro, possui um
enderec¸o fixo.
Isso significa que na˜o se pode atribuir um enderec¸o para
uma varia´vel do tipo vetor.
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[] = 1,2,3,4,5;
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++) pont[i]=2*i-1;
Diferenc¸a
Uma varia´vel vetor, diferente de um ponteiro, possui um
enderec¸o fixo.
Isso significa que na˜o se pode atribuir um enderec¸o para
uma varia´vel do tipo vetor.
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[] = 1,2,3,4,5;
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++) pont[i]=2*i-1;
Diferenc¸a
Uma varia´vel vetor, diferente de um ponteiro, possui um
enderec¸o fixo.
Isso significa que na˜o se pode atribuir um enderec¸o para
uma varia´vel do tipo vetor.
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[] = 1,2,3,4,5;
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++) pont[i]=2*i-1;
Diferenc¸a
Uma varia´vel vetor, diferente de um ponteiro, possui um
enderec¸o fixo.
Isso significa que na˜o se pode atribuir um enderec¸o para
uma varia´vel do tipo vetor.
Tanto e´ verdade que uma varia´vel vetor possui um
enderec¸o, que podemos atribu´ı-la a uma varia´vel
ponteiro:
int v[] = 1,2,3,4,5;
int *pont;
p=v;
E enta˜o, podemos usar ponto como se fosse um vetor:
for(i=0;i¡5;i++) pont[i]=2*i-1;
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deveser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
Exerc´ıcios
Em todos os exerc´ıcios, fac¸a o algoritmo em fluxograma ou pseudoco´digo e depois
implemente em C.
1 10 alunos de auto-escola fizeram o exame final para receber a carta de
motorista. O co´digo 1, significa aprovado, e 2, reprovado. Fac¸a um programa
que leia cada co´digo separadamente e diga quantos alunos foram aprovados e
quantos foram reprovados. (A escolha de quantos foram aprovados e
reprovados e´ sua)
2 Fac¸a um programa que para qualquer inteiro n > 0, calcule a soma:
S = 1 +
1
2
+
1
3
+ · · · + 1
n
,
3 Fac¸a um programa que verifique se um nu´mero inteiro positivo menor que
1000 e´ primo. (Um inteiro positivo e´ primo, se admite apenas 1 e ele mesmo
como divisores).
4 A sequeˆncia de Fibonacci e´ definida da seguinte forma: F1 = 1, F2 = 1 e
Fn = Fn−1 + Fn−2, n > 2. Fac¸a um programa que:
Exiba os vinte primeiros termos da sequeˆncia de Fibonacci.
Exiba o de´cimo e o vige´simo termo.
Exiba todos os termos menores que 1000.
Exiba o primeiro termo maior que 1000.
5 Fac¸a um programa que reverta nu´meros. Por exemplo, se a entrada for 813, a
sa´ıda deve ser 318, se a entrada for 450 a sa´ıda deve ser 54.
U¨bersicht
1 Structs
2 Vetor de estruturas
3 Exerc´ıcios: parte 1
4 Ponteiros
5 Vetores e ponteiros
6 Refereˆncias
Refereˆncias
DEITEL, H. M., DEITEL, P. J., Como Programar em C. Rio de
Janeiro: LTC, 2011. Cap. 7.
ASCENCIO, A. F. G., CAMPOS, E. A. V., Fundamentos da
Programac¸a˜o de Computadores – Algoritmos, Pascal e C/C++,
Pearson Prentice Hall, 2003. .
Refereˆncias
DEITEL, H. M., DEITEL, P. J., Como Programar em C. Rio de
Janeiro: LTC, 2011. Cap. 7.
ASCENCIO, A. F. G., CAMPOS, E. A. V., Fundamentos da
Programac¸a˜o de Computadores – Algoritmos, Pascal e C/C++,
Pearson Prentice Hall, 2003. .
	Structs
	Vetor de estruturas
	Exercícios: parte 1
	Ponteiros
	Vetores e ponteiros
	Referências

Outros materiais