SlideShare una empresa de Scribd logo
1 de 37
Escola Secundária da Batalha Estruturas em C Miguela Fernandes
Estruturas ,[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Solução: Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Declaração ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Definição de Tipos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],struct  ponto {  int  x; int  y; }; struct  ponto p1, p2; Repetição ,[object Object],[object Object]
Definição de Tipos   (declaração de variáveis)  Novo tipo:  struct   Aluno    Definição de variáveis:  struct Aluno   aluno1 ,  aluno2,*p, lista[10] ; struct   Aluno   {  char   nome [NOME_MAX + 1];   int   numero ;  double   media ; };  Equivalente a: struct   {  char   nome [NOME_MAX + 1];   int   numero ;  double   media ; }aluno1,aluno2,*p, lista[10];
Inicialização ,[object Object],[object Object],[object Object],[object Object],[object Object],aluno nome: numero: media:
Acesso aos dados struct-var.campo Exemplo : aluno1.nome = “Pedro”;/*atribuição */ aluno2.nome = “João; if ((aluno1.nome == aluno2.nome) && (aluno1.media >= aluno2.media))    ...
Inicialização de estruturas struct Aluno   {  char nome[NOME_MAX + 1];  int numero;  double media;}; struct Aluno aluno =  {"Zacarias", 666, 20.0};   Equivalente a:   struct Aluno aluno; strcpy(aluno.nome,"Zacarias"); aluno.numero = 666; aluno.media = 20.0;  aluno nome: numero: media: Z   a   c   a r i as 666 20.0
Atribuição de Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],p2 = p1 p1 x: y: 220 110 p2 x: y: p2 x: y: 220 110
Atribuição de Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Composição de Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],r inicio x: y: 10 20 fim x: y: 30 40
Estruturas como parâmetros ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],p x: y: 10 20 p x: y:
Operações ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Arrays de Estruturas struct  ponto arp[10]; /* cria um array de 10 pontos */ arp[1].x = 5;   /*atribui 5 a coordenada x do 2º ponto */ struct  jogador { char  *nome; int  idade; }; struct  jogador PT[4] = {“Figo”,32, “ Carlos”, 24,  “ Rui Costa”,27 ...}; PT nome: idade: Figo 32 nome: idade: Carlos 24 nome: idade: Rui Costa 27 nome: idade: ... ...
Ponteiros para Estruturas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],pp 1002 p1 x: y: 1002 10 20
Espaço Alocado para uma Estrutura ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Função  sizeof(tipo) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Espaço Efectivo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Espaço Efectivo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Espaço Efectivo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Alocação Dinâmica de Memória ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],número de bytes alocados size_t n
Alocação Dinâmica de Memória ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
malloc () – exemplo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
malloc () ,[object Object]
Libertar memória dinâmica ,[object Object],[object Object],[object Object],[object Object],[object Object]
Ajuste da memória dinâmica ,[object Object]
Ajuste da memória dinâmica ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Alocação dinâmica de memória ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Alocação dinâmica de memória ,[object Object],[object Object],[object Object],[object Object],[object Object]
Exercícios ,[object Object],[object Object],[object Object]
Resolução Nº 1 1- Pretende-se que faça a alocação de espaço em memória para 10 inteiros. Deverá imprimir os seus respectivos endereço de memórias e o seu conteúdo. #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <alloc.h> int *dados,i;  //int *p; void main() { clrscr(); dados=(int *)malloc(5*sizeof(int)); if (dados==NULL) { printf (&quot;A aloca‡Æo nÆo correu bem!!&quot;); exit(1); }  //p=dados; podia iniciar um outro ponteiro for (i=0;i<5;++i) { printf(&quot;O dados sÆo %d &quot;, *(dados+i)); //mostra o que existe nesse espa‡o de mem¢ria printf(&quot;. E est  no endere‡o %d&quot;, dados);//endere‡o de mem¢ria dados++; //printf(&quot;O dados sÆo %d&quot;, *(p+i)); //p++; } getch(); }
Resolução Nº 2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Resolução Nº 3 ,[object Object],#include <stdio.h> #include <stdlib.h> void main() {  int *v;  int soma, i, num, c;  float media; /* Esta operação é necessária para utilizar posteriormente a função realloc() */ v = (int *) malloc( sizeof(int) ); /* São inicializadas as variáveis soma e contador de números inseridos */  soma = 0; i = 0; /* O primeiro número é inserido antes do ciclo while para verificar se é zero (para a acabar) */ printf(&quot;Insira um número (zero para acabar): &quot;);  scanf(&quot;%d&quot;, &num); while( num ) /* O ciclo é executado enquanto num não é zero */ { i++;  v = (int *) realloc(v, i*sizeof(int)); *(v+i-1) = num; /* O vector começa na posição zero pelo que i anda avançado um valor */ soma += num; /* É efectuado o somatório dos números inseridos */ /* É inserido um novo número para verificar no início do próximo ciclo */ printf(&quot;Insira um número (zero para acabar): &quot;);  scanf(&quot;%d&quot;, &num); } /* O cast (float) força as operações a serem realizadas no domínio dos float */ /* que de outra forma seria nos int (soma e i são ambos inteiros) */ media = (float) soma / i; for(c = 0; c < i; c++) if ( *(v+c) > media ) printf(&quot;O valor %d está acima da média.&quot;, *(v+i)); }
Bibliografia ,[object Object]

Más contenido relacionado

La actualidad más candente

Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
Luciano Ramalho
 
Estrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memóriaEstrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memória
Adriano Teixeira de Souza
 
11 tipos abstratos de dados
11   tipos abstratos de dados11   tipos abstratos de dados
11 tipos abstratos de dados
Ricardo Bolanho
 
Palestra python
Palestra pythonPalestra python
Palestra python
Rony Cruch
 
Programando em python classes
Programando em python   classesProgramando em python   classes
Programando em python classes
samuelthiago
 

La actualidad más candente (20)

ESTRUTURA DE DADOS (JAVA) AULA 09
ESTRUTURA DE DADOS (JAVA) AULA 09ESTRUTURA DE DADOS (JAVA) AULA 09
ESTRUTURA DE DADOS (JAVA) AULA 09
 
Programação Estruturada 2 - Aula 05
Programação Estruturada 2 - Aula 05Programação Estruturada 2 - Aula 05
Programação Estruturada 2 - Aula 05
 
Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 05
 
Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
 
Estrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memóriaEstrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memória
 
11 tipos abstratos de dados
11   tipos abstratos de dados11   tipos abstratos de dados
11 tipos abstratos de dados
 
Estrutura de Dados - Aula 03
Estrutura de Dados - Aula 03Estrutura de Dados - Aula 03
Estrutura de Dados - Aula 03
 
Apostila rpira
Apostila rpiraApostila rpira
Apostila rpira
 
Apostila aed
Apostila aedApostila aed
Apostila aed
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
 
A Linguagem Lua - Uma abordagem inicial
A Linguagem Lua - Uma abordagem inicialA Linguagem Lua - Uma abordagem inicial
A Linguagem Lua - Uma abordagem inicial
 
Estrutura de Dados - Aula 04
Estrutura de Dados - Aula 04Estrutura de Dados - Aula 04
Estrutura de Dados - Aula 04
 
Ed1
Ed1Ed1
Ed1
 
Mini-Curso: gnuplot
Mini-Curso: gnuplotMini-Curso: gnuplot
Mini-Curso: gnuplot
 
Palestra python
Palestra pythonPalestra python
Palestra python
 
Utilizandoo winplot
Utilizandoo winplotUtilizandoo winplot
Utilizandoo winplot
 
Tutorial R
Tutorial RTutorial R
Tutorial R
 
Usando o winplot
Usando o winplotUsando o winplot
Usando o winplot
 
Programando em python classes
Programando em python   classesProgramando em python   classes
Programando em python classes
 

Destacado

Estruturas em c joão carlos batista
Estruturas em c   joão carlos batistaEstruturas em c   joão carlos batista
Estruturas em c joão carlos batista
Joao Carlos Batista
 
Aula 1 módulo v - psi
Aula 1  módulo v - psiAula 1  módulo v - psi
Aula 1 módulo v - psi
111111119
 
Linguagem C 08 Definicao De Tipos
Linguagem C 08 Definicao De TiposLinguagem C 08 Definicao De Tipos
Linguagem C 08 Definicao De Tipos
Regis Magalhães
 
1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo
Fxx
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
apolllorj
 

Destacado (18)

Estruturas em c joão carlos batista
Estruturas em c   joão carlos batistaEstruturas em c   joão carlos batista
Estruturas em c joão carlos batista
 
Keep in shape
Keep in shapeKeep in shape
Keep in shape
 
Aula 1 módulo v - psi
Aula 1  módulo v - psiAula 1  módulo v - psi
Aula 1 módulo v - psi
 
Pged 02
Pged 02Pged 02
Pged 02
 
Módulo 1 de PSI
Módulo 1 de PSIMódulo 1 de PSI
Módulo 1 de PSI
 
Apostila C ANSI
Apostila C ANSIApostila C ANSI
Apostila C ANSI
 
Linguagem C 08 Definicao De Tipos
Linguagem C 08 Definicao De TiposLinguagem C 08 Definicao De Tipos
Linguagem C 08 Definicao De Tipos
 
Estruturas de Dados em C#
Estruturas de Dados em C#Estruturas de Dados em C#
Estruturas de Dados em C#
 
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
 
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TADEstrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo
 
Linguagem C - Funções
Linguagem C - FunçõesLinguagem C - Funções
Linguagem C - Funções
 
Programação em C
Programação em CProgramação em C
Programação em C
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Tipos de linguagem (verbal e não verbal)
Tipos de  linguagem (verbal e não verbal)Tipos de  linguagem (verbal e não verbal)
Tipos de linguagem (verbal e não verbal)
 
O Mundo web 2.0 com o eTwinning
O Mundo web 2.0 com o eTwinningO Mundo web 2.0 com o eTwinning
O Mundo web 2.0 com o eTwinning
 
Dia da Internet Segura 2017
Dia da Internet Segura 2017Dia da Internet Segura 2017
Dia da Internet Segura 2017
 

Similar a Estruturas

Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
gjpbg
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2
Leandro Lopes
 

Similar a Estruturas (20)

mod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasmod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicas
 
Programação Estruturada 2 - Aula 03
Programação Estruturada 2 - Aula 03Programação Estruturada 2 - Aula 03
Programação Estruturada 2 - Aula 03
 
RevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxRevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptx
 
Ativ complementar etapa 02
Ativ complementar etapa 02Ativ complementar etapa 02
Ativ complementar etapa 02
 
Ling c
Ling cLing c
Ling c
 
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria (1).ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria (1).pptAula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria (1).ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria (1).ppt
 
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria.ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria.pptAula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria.ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria.ppt
 
Aula 7 pc - estrutura
Aula 7   pc - estruturaAula 7   pc - estrutura
Aula 7 pc - estrutura
 
Aprendendo objective c - parte 1
Aprendendo objective c - parte 1Aprendendo objective c - parte 1
Aprendendo objective c - parte 1
 
Linguagem C 09 Ponteiros
Linguagem C 09 PonteirosLinguagem C 09 Ponteiros
Linguagem C 09 Ponteiros
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2
 
Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1
 
Maratona de Programação com STL
Maratona de Programação com STLMaratona de Programação com STL
Maratona de Programação com STL
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e Funções
 
Exercícios de programação orientado a objeto
Exercícios de programação orientado a objetoExercícios de programação orientado a objeto
Exercícios de programação orientado a objeto
 
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete (1).ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete (1).pptAula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete (1).ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete (1).ppt
 
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete.ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete.pptAula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete.ppt
Aula_03_-_2_-_Aloca_o_Din_mica_de_Mem_ria_new_delete.ppt
 
Java Desktop
Java DesktopJava Desktop
Java Desktop
 
Aula c++ estruturas de dados
Aula c++   estruturas de dadosAula c++   estruturas de dados
Aula c++ estruturas de dados
 

Más de Agrupamento de Escolas da Batalha

Más de Agrupamento de Escolas da Batalha (20)

New European Bauhaus and Heritage - an explosion of creativity through Minecraft
New European Bauhaus and Heritage - an explosion of creativity through MinecraftNew European Bauhaus and Heritage - an explosion of creativity through Minecraft
New European Bauhaus and Heritage - an explosion of creativity through Minecraft
 
Live event for Digital Technologies To Support Innovative Pedagogies In Vocat...
Live event for Digital Technologies To Support Innovative Pedagogies In Vocat...Live event for Digital Technologies To Support Innovative Pedagogies In Vocat...
Live event for Digital Technologies To Support Innovative Pedagogies In Vocat...
 
eTwinning & Plano de Ação para o Desenvolvimento Digital das Escolas (PADDE)
eTwinning & Plano de Ação para o Desenvolvimento Digital das Escolas (PADDE)  eTwinning & Plano de Ação para o Desenvolvimento Digital das Escolas (PADDE)
eTwinning & Plano de Ação para o Desenvolvimento Digital das Escolas (PADDE)
 
Aulas à la carte Programar para proteger a Natureza
Aulas à la carte Programar para proteger a NaturezaAulas à la carte Programar para proteger a Natureza
Aulas à la carte Programar para proteger a Natureza
 
II Encontro de Educação de Cantanhede: Jogos de fuga, outra forma de aprender
II Encontro de Educação de Cantanhede: Jogos de fuga, outra forma de aprenderII Encontro de Educação de Cantanhede: Jogos de fuga, outra forma de aprender
II Encontro de Educação de Cantanhede: Jogos de fuga, outra forma de aprender
 
Micro:bits: pensamento computational
Micro:bits: pensamento computationalMicro:bits: pensamento computational
Micro:bits: pensamento computational
 
eTwinning Serbia: Tools of media literacy
eTwinning Serbia: Tools of media literacyeTwinning Serbia: Tools of media literacy
eTwinning Serbia: Tools of media literacy
 
Workshop: Exploração do MineCraft em ambientes educativos
Workshop: Exploração do MineCraft em ambientes educativosWorkshop: Exploração do MineCraft em ambientes educativos
Workshop: Exploração do MineCraft em ambientes educativos
 
14 de Abril: Partilha de boas práticas: Mind & Bytes Week
14 de Abril: Partilha de boas práticas: Mind & Bytes Week14 de Abril: Partilha de boas práticas: Mind & Bytes Week
14 de Abril: Partilha de boas práticas: Mind & Bytes Week
 
ACD - Escape Room na Educação
ACD - Escape Room na EducaçãoACD - Escape Room na Educação
ACD - Escape Room na Educação
 
Sessão de formação sobre Microsoft 365 - SharePoint | Onedrive | Teams
Sessão de formação sobre Microsoft 365 - SharePoint | Onedrive | TeamsSessão de formação sobre Microsoft 365 - SharePoint | Onedrive | Teams
Sessão de formação sobre Microsoft 365 - SharePoint | Onedrive | Teams
 
Dispositivos móveis - aprendizagens familiares
Dispositivos móveis - aprendizagens familiaresDispositivos móveis - aprendizagens familiares
Dispositivos móveis - aprendizagens familiares
 
Online: Media literacy tools of and for empowerment
Online: Media literacy tools of and for empowerment Online: Media literacy tools of and for empowerment
Online: Media literacy tools of and for empowerment
 
How to integrate new digital tools
How to integrate new digital toolsHow to integrate new digital tools
How to integrate new digital tools
 
Croacia: Professional development of teachers through mobility
Croacia: Professional development of teachers through mobilityCroacia: Professional development of teachers through mobility
Croacia: Professional development of teachers through mobility
 
Workshop 2: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
Workshop 2: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!Workshop 2: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
Workshop 2: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
 
Workshop 1: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
Workshop 1: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!Workshop 1: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
Workshop 1: Aprendizagem Baseada em Projetos: desafiar os alunos a aprender!
 
Online eTwinning PDW: VET for Social Inclusion & Labour Market Integration
Online eTwinning PDW: VET for Social Inclusion & Labour Market IntegrationOnline eTwinning PDW: VET for Social Inclusion & Labour Market Integration
Online eTwinning PDW: VET for Social Inclusion & Labour Market Integration
 
Alcobaça: ACD eTwinning integrado no currículo
Alcobaça: ACD eTwinning integrado no currículoAlcobaça: ACD eTwinning integrado no currículo
Alcobaça: ACD eTwinning integrado no currículo
 
Vila Nova da Barquinha: ACD eTwinning integrado no currículo
Vila Nova da Barquinha: ACD eTwinning integrado no currículoVila Nova da Barquinha: ACD eTwinning integrado no currículo
Vila Nova da Barquinha: ACD eTwinning integrado no currículo
 

Último

19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
AntonioVieira539017
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 

Último (20)

Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Camadas da terra -Litosfera conteúdo 6º ano
Camadas da terra -Litosfera  conteúdo 6º anoCamadas da terra -Litosfera  conteúdo 6º ano
Camadas da terra -Litosfera conteúdo 6º ano
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAEDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
GÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptxGÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptx
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 

Estruturas

  • 1. Escola Secundária da Batalha Estruturas em C Miguela Fernandes
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8. Definição de Tipos (declaração de variáveis)  Novo tipo: struct Aluno  Definição de variáveis: struct Aluno aluno1 , aluno2,*p, lista[10] ; struct Aluno { char nome [NOME_MAX + 1]; int numero ; double media ; }; Equivalente a: struct { char nome [NOME_MAX + 1]; int numero ; double media ; }aluno1,aluno2,*p, lista[10];
  • 9.
  • 10. Acesso aos dados struct-var.campo Exemplo : aluno1.nome = “Pedro”;/*atribuição */ aluno2.nome = “João; if ((aluno1.nome == aluno2.nome) && (aluno1.media >= aluno2.media)) ...
  • 11. Inicialização de estruturas struct Aluno { char nome[NOME_MAX + 1]; int numero; double media;}; struct Aluno aluno = {&quot;Zacarias&quot;, 666, 20.0}; Equivalente a: struct Aluno aluno; strcpy(aluno.nome,&quot;Zacarias&quot;); aluno.numero = 666; aluno.media = 20.0; aluno nome: numero: media: Z a c a r i as 666 20.0
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. Arrays de Estruturas struct ponto arp[10]; /* cria um array de 10 pontos */ arp[1].x = 5; /*atribui 5 a coordenada x do 2º ponto */ struct jogador { char *nome; int idade; }; struct jogador PT[4] = {“Figo”,32, “ Carlos”, 24, “ Rui Costa”,27 ...}; PT nome: idade: Figo 32 nome: idade: Carlos 24 nome: idade: Rui Costa 27 nome: idade: ... ...
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. Resolução Nº 1 1- Pretende-se que faça a alocação de espaço em memória para 10 inteiros. Deverá imprimir os seus respectivos endereço de memórias e o seu conteúdo. #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <alloc.h> int *dados,i; //int *p; void main() { clrscr(); dados=(int *)malloc(5*sizeof(int)); if (dados==NULL) { printf (&quot;A aloca‡Æo nÆo correu bem!!&quot;); exit(1); } //p=dados; podia iniciar um outro ponteiro for (i=0;i<5;++i) { printf(&quot;O dados sÆo %d &quot;, *(dados+i)); //mostra o que existe nesse espa‡o de mem¢ria printf(&quot;. E est  no endere‡o %d&quot;, dados);//endere‡o de mem¢ria dados++; //printf(&quot;O dados sÆo %d&quot;, *(p+i)); //p++; } getch(); }
  • 35.
  • 36.
  • 37.