Você está na página 1de 16

Programação de Computadores I

• Prof. Lilian N Araujo

Sistemas de Informação
2020
ESTRUTURA DE DADOS
HETEROGÊNEOS
Structs (registros)
• Uma estrutura (struct) ou registro em C é uma coleção de
um ou mais valores agrupados sob um único nome.
• São utilizadas para agrupar as informações relacionadas
de tipos de dados diferentes.
• As estruturas constituem um recurso importante para
organizar os dados utilizados por um programa, graças à
possibilidade de tratar um grupo de valores como uma
única variável.
Structs (registros)
• Digamos que você precise controlar os seguintes dados
relacionados ao estoque de um pequeno estabelecimento
comercial:

• Este seria um caso para o uso de estruturas, pois relacionados


a cada produto, temos dados do tipo int (codigo e quantidade),
char (nome e observações) e float (valor de compra, valor de
venda e lucro).
Structs (registros)
• sintaxe:

• Onde:
• struct: define que será declarada uma struct
• nome_da_estrutura: nome dado à estrutura
• tipo var: tipo de dado da variável
Structs (registros)
• A declaração de struct deve ser realizada antes do
desenvolvimento da função main().
• Para o caso anterior, poderíamos ter algo como:
Declarando variáveis do tipo struct
• Até o momento, apenas declaramos uma estrutura, mas
ainda não possuímos uma forma de acessar essa estrutura.
• Existem duas formas de declararmos uma variável do tipo
struct: dentro da função main() ou na própria declaração da
struct.

• Na função main():
• Dentro da função main(), declare a variável responsável pela
struct da seguinte forma:

• Exemplo:
Declarando variáveis do tipo struct
• Na própria declaração da struct:
• Pode declarar a variável logo após a
declaração da estrutura:
• sintaxe:

• Onde:
• struct: define que será declarada uma struct
• nome_da_estrutura: nome dado à estrutura
• tipo var: tipo de dado da variável
• var_estrutura: variável responsável pela
estrutura
Acessando as variáveis de uma
estrutura
• Para acessar e manipular as variáveis definidas dentro de
uma estrutura precisamos primeiro referenciar a variável
responsável pela estrutura, logo depois, incluir um ponto que
é o delimitador e, finalmente, informar o nome da variável
contida na estrutura que desejamos manipular.
• sintaxe:
• onde:
• var_estrutura : nome da estrutura;
• variável: nome da variável declarada dentro da estrutura.
• exemplo:
10
11
Trabalhando com vetores em uma struct
• Para que seja possível usar vetores em uma estrutura, é
necessário utilizarmos a variável responsável pela mesma.
Declarando esta como um vetor.
• Exemplo:
Trabalhando com vetores em uma struct
• A utilização desse vetor do tipo estrutura deve seguir as
mesmas regras de um vetor comum, apenas salientando
que o vetor é a variável que representa a estrutura e não
uma variável declarada dentro da estrutura, isto é,
pertencente à struct.
• Uma boa aplicação de vetores em struct seria a necessidade
de gerar mais de um registro de uma determinada
informação, como, por exemplo, informações cadastrais de
clientes, fornecedores, produtos, vendas etc.
• E por ser um vetor, sua aplicação mais comum seria com a
utilização de estruturas de repetição (for, while e do…while).
14
Trabalhando com vetores em uma struct
• Veja os dois casos apresentados:

Resultado: Resultado:
Gerará 80 registros Gerará UM único registro, contendo
• 80 idades e 80 nomes em vetores
0 Idade 13 independentes.
Nome Sandra 0 1 … 79
idade: 13 33 … 23
1 Idade 33
Nome Vivian
… 0 1 … 79
79 Idade 23 nome: Sandra Vivian … Beatriz
Nome Beatriz
Trabalhando com vetores em uma struct
• Quando usamos estruturas, estamos criando registros que
representam um conjunto de informações de tipos diferentes
e que serão representados por uma variável do tipo
estrutura.