SlideShare uma empresa Scribd logo
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]

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Destaque

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
 

Destaque (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
 

Semelhante 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
 

Semelhante 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
 

Mais de Agrupamento de Escolas da Batalha

Mais 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

OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdfOFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
AndriaNascimento27
 
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
ESCRIBA DE CRISTO
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
edjailmax
 
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdfAS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
ssuserbb4ac2
 
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Pastor Robson Colaço
 
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdfmanual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
rarakey779
 
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdf
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdfInstrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdf
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdf
ssuserbb4ac2
 

Último (20)

Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdfCurso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
 
Apresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao AssédioApresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao Assédio
 
Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40
 
OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdfOFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
OFICINA - CAFETERIA DAS HABILIDADES.pdf_20240516_002101_0000.pdf
 
ATPCG 27.05 - Recomposição de aprendizagem.pptx
ATPCG 27.05 - Recomposição de aprendizagem.pptxATPCG 27.05 - Recomposição de aprendizagem.pptx
ATPCG 27.05 - Recomposição de aprendizagem.pptx
 
Recurso da Casa das Ciências: Bateria/Acumulador
Recurso da Casa das Ciências: Bateria/AcumuladorRecurso da Casa das Ciências: Bateria/Acumulador
Recurso da Casa das Ciências: Bateria/Acumulador
 
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docxAtividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
 
00Certificado - MBA - Gestão de projetos
00Certificado - MBA - Gestão de projetos00Certificado - MBA - Gestão de projetos
00Certificado - MBA - Gestão de projetos
 
Apresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoApresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimento
 
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
INTRODUÇÃO A ARQUEOLOGIA BÍBLICA [BIBLIOLOGIA]]
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
 
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdfAS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
AS COLUNAS B E J E SUAS POSICOES CONFORME O RITO.pdf
 
Fotossíntese para o Ensino médio primeiros anos
Fotossíntese para o Ensino médio primeiros anosFotossíntese para o Ensino médio primeiros anos
Fotossíntese para o Ensino médio primeiros anos
 
Atividade com a música Xote da Alegria - Falamansa
Atividade com a música Xote  da  Alegria    -   FalamansaAtividade com a música Xote  da  Alegria    -   Falamansa
Atividade com a música Xote da Alegria - Falamansa
 
AULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptxAULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptx
 
22-modernismo-5-prosa-de-45.pptxrpnsaaaa
22-modernismo-5-prosa-de-45.pptxrpnsaaaa22-modernismo-5-prosa-de-45.pptxrpnsaaaa
22-modernismo-5-prosa-de-45.pptxrpnsaaaa
 
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
 
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdfmanual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
manual-de-introduc3a7c3a3o-ao-direito-25-10-2011.pdf
 
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdf
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdfInstrucoes_A_M_Pranchas_01_a_33_Encadern (4).pdf
Instrucoes_A_M_Pranchas_01_a_33_Encadern (4).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.