Il 0% ha trovato utile questo documento (0 voti)
3 visualizzazioni8 pagine

Aula Struct

Difícil
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
3 visualizzazioni8 pagine

Aula Struct

Difícil
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

Estrutura de Dados - STRUCT

As estruturas de dados consistem em criar apenas um dado que contém vários membros,
que nada mais são do que outras variáveis. De uma forma mais simples, é como se uma
variável tivesse outras variáveis dentro dela. A vantagem em se usar estruturas de dados é
que podemos agrupar de forma organizada vários tipos de dados diferentes, por exemplo,
dentro de uma estrutura de dados podemos ter juntos tanto um tipo float, um inteiro, um
char ou um double.

As variáveis que ficam dentro da estrutura de dados são chamadas de membros.

Resumindo:

1. Uma estrutura (struct) é uma coleção de uma ou mais variáveis, possivelmente de


tipos diferentes, agrupadas sob um único nome.
2. Estruturas constituem um recurso importante para organizar os dados utilizados
por um programa pois trata um grupo de valores como uma única variável.
3. São chamadas de registros em outras linguagens de programação.
4. Estruturas (ou registros) são classificados como variáveis compostas
heterogêneas, pois podem agrupar variáveis de tipos diferentes.
5. Em contraposição, temos os vetores e matrizes, classificados como variáveis
compostas homogêneas, pois somente agrupam variáveis do mesmo tipo.

Criando uma estrutura de dados com STRUCT

struct nome_da_estrutura { tipo_de_dado nome_do_membro; };

Por exemplo, se fossemos criar uma estrutura de dados para representar uma data
faríamos:
1. A palavra-chave struct informa ao compilador que um modelo
struct data { de estrutura está sendo definido.
int dia; 2. “data” é uma etiqueta que dá nome à definição da estrutura.
int mes; 3. Uma definição de estrutura é um comando, por isso deve
int ano; terminar em ponto-e-vírgula.
}; 4. A definição de uma estrutura não reserva qualquer espaço na
memória.
5. Note que, no exemplo dado, nenhuma variável foi declarada de
fato, apenas a forma dos dados foi definida.
6. Essa definição, porém, cria um novo tipo de dados, que pode
Declarando uma estrutura de dados com STRUCT
Existem várias maneiras de declarar a variável x do tipo data, abaixo apresentam-se duas
formas:

1.A definição do formato de uma


estrutura pode ser feita dentro
da função principal (main) ou
fora dela.
2. Usualmente, declara-se
fora da função principal, de
modo que outras funções
também possam
“acessar” a estrutura definida.

Declarando um struct e acessando seus membros


(variáveis)
Ainda utilizando o exemplo acima, vamos declarar uma variável do tipo estrututa de
dados data e acessar seus membros.

Após criarmos uma estrutura de dados com struct, poderemos utilizá-la como um tipo de
dado comum (ex.: float, int, char). E para acessar seus membros utilizamos a variável
declarada mais um ponto (.) e o nome do membro. Veja este exemplo abaixo:

struct ALUNO {
int matricula;
string nome;
float nota1, nota2;
};
main () {

ALUNO aluno1;

cout<<"Informe o nome do primeiro aluno: ";


getline (cin,[Link]);
fflush (stdin);
cout<<"Informe o número da matrícula do aluno: ";
cin>>[Link];
cout<<"Informe a primeira nota do aluno: ";
cin>>aluno1.nota1;
cout<<"Informe a segunda nota do aluno: ";
cin>>aluno1.nota2;
fflush (stdin);

media1=((aluno1.nota1+aluno1.nota2)/2);

Portanto, a variável aluno1 é declarada como sendo um tipo de dado ALUNO.

ALUNO é uma estrutura de dados que tem quatro variáveis (ou quatro membros) de tipos
variados, sendo:
matricula do tipo inteiro;
nome do tipo string;
nota1 e nota2 do tipo float;

Como aluno1 é um tipo de dado ALUNO, ele obtém os mesmos membros.


Para acessar cada membro, usamos a variável e depois o nome do membro que queremos
acessar separados por ponto (.)
[Link];
media1=((aluno1.nota1+aluno1.nota2)/2);

Exemplo:
 Coleções de dados que são de tipos diferentes
 Ex.:ficha de um cadastro de cliente
Declarando a estrutura:

Iniciando o main() e criando a variável do tipo estrutura:

Lendo valores para a variável do tipo estrutura:

Mostrando os valores armazenados na variável do tipo estrutura:


Vetor de estruturas
Usado quando precisamos de diversas cópias de uma estrutura.
Por exemplo: cada cliente de uma locadora de vídeo constitui um elemento de um vetor,
cujo tipo é uma estrutura de dados que define as características de cada cliente.
struct nome_da_estrutura variável[dimensão];

Exemplo Problemas reais:


 Coleções de dados que são de tipos diferentes
 Ex.:ficha de um cadastro de cliente

Declarando a estrutura:

Iniciando o main() e criando a variável do tipo estrutura:


Lendo valores para a variável do tipo estrutura:

Mostrando os valores armazenados na variável do tipo estrutura:

Exercícios
1) Qual a diferença entre o vetor e a struct? Explique e cite um exemplo.

2) Uma escola precisa montar o cadastro geral de seus alunos. Este cadastro deverá
conter as seguintes informações por aluno: nome completo, data de nascimento, telefone,
endereço completo e série atual. Levando em conta que esta escola possui no máximo
500 alunos, como você faria para estruturar estas informações num sistema de controle e
consulta de cadastro? Explique e se necessário demonstre sua idéia. De um exemplo de
acesso a um dos dados do seu cadastro.

3)Fazer um programa que cria uma estrutura livro, que contém os elementos nome,
editora, isbn, ano de edição, número de páginas e preço. A estrutura livro deverá ser útil
para armazenar os 500 livros da Biblioteca Particular da ANA de modo que seja possível:
Ler os dados, consultar os dados e imprimir a média do número de páginas do livros.
Estruturas aninhadas
Um campo de uma estrutura pode ser uma outra estrutura.

Quando isso ocorre, temos uma estrutura aninhada.

O padrão ANSI C especifica que as estruturas podem ser aninhadas até 15 níveis, mas a
maioria dos compiladores permite mais.

Como definido anteriormente, membros de estruturas podem ser de qualquer tipo. Isto
inclui outras estruturas. Abaixo define-se duas estruturas, a segunda tendo membros que
são também estruturas:

Declarando a estrutura:

Iniciando o main() e criando a variável do tipo estrutura:


Lendo valores para a variável do tipo estrutura:

Mostrando os valores armazenados na variável do tipo estrutura:

Exercícios(lista será trabalho)

Potrebbero piacerti anche