SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
Estructuras en el lenguaje C
¿Qué son las estructuras?

    Una colección de variables
    relacionadas bajo el mismo
    nombre

    Son tipos de datos derivados,
    están construidas a partir de
    variables de otros tipos


15/02/12       Programación avanzada y métodos numéricos   2
Definición
           Identificador o rótulo
      struct alumno {
           char nombre[20];
           int edad;                                 Miembros
           float estatura;
      };
15/02/12          Programación avanzada y métodos numéricos     3
Declaración, inicialización y acceso
struct alumno x; // Declaración


struct alumno y = { “Jimena”, 22,
1.67}; // Inicialización


x.edad = 21; // Acceso
float a = y.estatura;
15/02/12    Programación avanzada y métodos numéricos   4
Copiar datos de una estructura a otra
struct alumno x; // Estructura vacía
struct alumno y = {“Jimena”, 22, 1.67};

x = y;

/* La siguiente línea imprimirá el nombre
Jimena */

printf(“Dato en x: %s”, x.nombre);

15/02/12    Programación avanzada y métodos numéricos   5
Apuntadores a estructuras
struct alumno *ap_x; // Apuntador
ap_x = &x; // Asignamos la dirección de x


/* Para acceder a un miembro desde un
apuntador, usamos una flecha -> */
ap_x->edad = 45;
printf(“Miembro edad de estructura x:
%d”,ap_x->edad); // imprime 45
15/02/12       Programación avanzada y métodos numéricos   6
Estructuras anidadas
struct tarea {
 struct alumno autor; // estructura
anidada
  int calificacion;
} tarea_x; // Se puede declarar al final de la
definición



15/02/12         Programación avanzada y métodos numéricos   7
Estructuras anidadas
/* Para acceder a una estructura interna, hay
que hacerlo en orden */
tarea_x.autor.edad = 45;
printf(“Autor de la tarea: %s”,
tarea_x.autor.nombre);




15/02/12      Programación avanzada y métodos numéricos   8
Estructuras anidadas
/* Para acceder a una estructura interna, hay
que hacerlo en orden */
tarea_x.autor.edad = 45;
printf(“Autor de la tarea: %s”,
tarea_x.autor.nombre);




15/02/12      Programación avanzada y métodos numéricos   9
Estructuras autoreferenciadas
struct nodo {
     int dato;
 struct nodo *anterior; // apuntador al
mismo tipo de estructura
     struct nodo *siguiente;
};



15/02/12         Programación avanzada y métodos numéricos   10
Estructuras autoreferenciadas
struct nodo nodo1, nodo2;
nodo1.dato = -5;
nodo1.siguiente = &nodo2; // asignamos
dirección de memoria
nodo2.dato = 67;
nodo2.anterior = &nodo1;
printf(“Dato del nodo anterior a 2: %i”,
nodo2.anterior->dato);
15/02/12         Programación avanzada y métodos numéricos   11
Bibliografía

    Deitel, H. Y Deitel, P. Cómo
    programar en C. Prentice Hall.




15/02/12     Programación avanzada y métodos numéricos   12

Más contenido relacionado

Destacado

1.4 software numerico
1.4 software numerico1.4 software numerico
1.4 software numerico
morenito9001
 
Metodos numericos1
Metodos numericos1Metodos numericos1
Metodos numericos1
jennifer
 

Destacado (20)

Condicionales multiples o anidadas
Condicionales multiples o anidadasCondicionales multiples o anidadas
Condicionales multiples o anidadas
 
Métodos numéricos- Métodos de Aproximación
Métodos numéricos- Métodos de AproximaciónMétodos numéricos- Métodos de Aproximación
Métodos numéricos- Métodos de Aproximación
 
1.4 software numerico
1.4 software numerico1.4 software numerico
1.4 software numerico
 
Presentación Métodos Numericos
Presentación Métodos NumericosPresentación Métodos Numericos
Presentación Métodos Numericos
 
Metodo Numerico
Metodo NumericoMetodo Numerico
Metodo Numerico
 
Laboratorio metodos-numericos-unsch-01
Laboratorio metodos-numericos-unsch-01Laboratorio metodos-numericos-unsch-01
Laboratorio metodos-numericos-unsch-01
 
Codigo octave
Codigo octaveCodigo octave
Codigo octave
 
Introducción a los Métodos Numéricos
Introducción a los Métodos NuméricosIntroducción a los Métodos Numéricos
Introducción a los Métodos Numéricos
 
¿MATLAB? Yo uso Octave UPM
¿MATLAB? Yo uso Octave UPM¿MATLAB? Yo uso Octave UPM
¿MATLAB? Yo uso Octave UPM
 
Introducción a los métodos númericos Clase 1
Introducción a los métodos númericos Clase 1Introducción a los métodos númericos Clase 1
Introducción a los métodos númericos Clase 1
 
Método de jacobi Metodos Numericos
Método de jacobi Metodos NumericosMétodo de jacobi Metodos Numericos
Método de jacobi Metodos Numericos
 
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
 
Raices de ecuaciones Metodos Númericos
Raices de ecuaciones Metodos NúmericosRaices de ecuaciones Metodos Númericos
Raices de ecuaciones Metodos Númericos
 
Metodos numericos1
Metodos numericos1Metodos numericos1
Metodos numericos1
 
Reactor de flujo piston con MATLAB Octave
Reactor de flujo piston con MATLAB OctaveReactor de flujo piston con MATLAB Octave
Reactor de flujo piston con MATLAB Octave
 
Cálculo Raíces Con Octave
Cálculo Raíces Con OctaveCálculo Raíces Con Octave
Cálculo Raíces Con Octave
 
Matematica computacional
Matematica computacionalMatematica computacional
Matematica computacional
 
Antologia de metodos numericos isc
Antologia de metodos numericos iscAntologia de metodos numericos isc
Antologia de metodos numericos isc
 
Presentacion metodos numerico teoria de errores
Presentacion metodos numerico teoria de errores Presentacion metodos numerico teoria de errores
Presentacion metodos numerico teoria de errores
 
Metodos Numericos
Metodos NumericosMetodos Numericos
Metodos Numericos
 

Similar a Estructuras

Unidad%2 bxii estructuras
Unidad%2 bxii estructurasUnidad%2 bxii estructuras
Unidad%2 bxii estructuras
jeoselyn
 
Programación II_modulo1lolololololo9oo.pptx
Programación II_modulo1lolololololo9oo.pptxProgramación II_modulo1lolololololo9oo.pptx
Programación II_modulo1lolololololo9oo.pptx
hassanbadredun
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programacion
diego MC
 
ESTRUCTURAS Y UNIONES EN C++
ESTRUCTURAS Y UNIONES EN C++ESTRUCTURAS Y UNIONES EN C++
ESTRUCTURAS Y UNIONES EN C++
die_dex
 
Poo 2009 u2_introd_a_la_poo_2
Poo 2009 u2_introd_a_la_poo_2Poo 2009 u2_introd_a_la_poo_2
Poo 2009 u2_introd_a_la_poo_2
Axel
 
GuíA De PráCtica 2
GuíA De PráCtica 2GuíA De PráCtica 2
GuíA De PráCtica 2
louis
 

Similar a Estructuras (20)

Unidad%2 bxii estructuras
Unidad%2 bxii estructurasUnidad%2 bxii estructuras
Unidad%2 bxii estructuras
 
Programación II_modulo1lolololololo9oo.pptx
Programación II_modulo1lolololololo9oo.pptxProgramación II_modulo1lolololololo9oo.pptx
Programación II_modulo1lolololololo9oo.pptx
 
Tema-estructuras-c++.pdf
Tema-estructuras-c++.pdfTema-estructuras-c++.pdf
Tema-estructuras-c++.pdf
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
 
01 uni1-estructuras de datos-introduccion a las ed
01 uni1-estructuras de datos-introduccion a las ed01 uni1-estructuras de datos-introduccion a las ed
01 uni1-estructuras de datos-introduccion a las ed
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programacion
 
ESTRUCTURAS Y UNIONES EN C++
ESTRUCTURAS Y UNIONES EN C++ESTRUCTURAS Y UNIONES EN C++
ESTRUCTURAS Y UNIONES EN C++
 
Poo 2009 u2_introd_a_la_poo_2
Poo 2009 u2_introd_a_la_poo_2Poo 2009 u2_introd_a_la_poo_2
Poo 2009 u2_introd_a_la_poo_2
 
GuíA De PráCtica 2
GuíA De PráCtica 2GuíA De PráCtica 2
GuíA De PráCtica 2
 
Curso9 estructuras
Curso9 estructurasCurso9 estructuras
Curso9 estructuras
 
Curso9 estructuras
Curso9 estructurasCurso9 estructuras
Curso9 estructuras
 
Clase2 diseno de una bd
Clase2 diseno de una bdClase2 diseno de una bd
Clase2 diseno de una bd
 
Unidad 2. Gestión de Bases de Datos. Los Sistemas Gestores de Bases de Datos
Unidad 2. Gestión de Bases de Datos. Los Sistemas Gestores de Bases de DatosUnidad 2. Gestión de Bases de Datos. Los Sistemas Gestores de Bases de Datos
Unidad 2. Gestión de Bases de Datos. Los Sistemas Gestores de Bases de Datos
 
Analisis Proyecto TETRAD V
 Analisis Proyecto TETRAD V Analisis Proyecto TETRAD V
Analisis Proyecto TETRAD V
 
Base de datos
Base de datosBase de datos
Base de datos
 
Clase 2 Unidad 2 Parte 1
Clase 2 Unidad 2 Parte 1Clase 2 Unidad 2 Parte 1
Clase 2 Unidad 2 Parte 1
 
Examen Unidad 1
Examen Unidad 1Examen Unidad 1
Examen Unidad 1
 

Último

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
NadiaMartnez11
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 

Último (20)

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
Diapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaDiapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundaria
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnn
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptxEL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 

Estructuras

  • 1. Estructuras en el lenguaje C
  • 2. ¿Qué son las estructuras?  Una colección de variables relacionadas bajo el mismo nombre  Son tipos de datos derivados, están construidas a partir de variables de otros tipos 15/02/12 Programación avanzada y métodos numéricos 2
  • 3. Definición Identificador o rótulo struct alumno { char nombre[20]; int edad; Miembros float estatura; }; 15/02/12 Programación avanzada y métodos numéricos 3
  • 4. Declaración, inicialización y acceso struct alumno x; // Declaración struct alumno y = { “Jimena”, 22, 1.67}; // Inicialización x.edad = 21; // Acceso float a = y.estatura; 15/02/12 Programación avanzada y métodos numéricos 4
  • 5. Copiar datos de una estructura a otra struct alumno x; // Estructura vacía struct alumno y = {“Jimena”, 22, 1.67}; x = y; /* La siguiente línea imprimirá el nombre Jimena */ printf(“Dato en x: %s”, x.nombre); 15/02/12 Programación avanzada y métodos numéricos 5
  • 6. Apuntadores a estructuras struct alumno *ap_x; // Apuntador ap_x = &x; // Asignamos la dirección de x /* Para acceder a un miembro desde un apuntador, usamos una flecha -> */ ap_x->edad = 45; printf(“Miembro edad de estructura x: %d”,ap_x->edad); // imprime 45 15/02/12 Programación avanzada y métodos numéricos 6
  • 7. Estructuras anidadas struct tarea { struct alumno autor; // estructura anidada int calificacion; } tarea_x; // Se puede declarar al final de la definición 15/02/12 Programación avanzada y métodos numéricos 7
  • 8. Estructuras anidadas /* Para acceder a una estructura interna, hay que hacerlo en orden */ tarea_x.autor.edad = 45; printf(“Autor de la tarea: %s”, tarea_x.autor.nombre); 15/02/12 Programación avanzada y métodos numéricos 8
  • 9. Estructuras anidadas /* Para acceder a una estructura interna, hay que hacerlo en orden */ tarea_x.autor.edad = 45; printf(“Autor de la tarea: %s”, tarea_x.autor.nombre); 15/02/12 Programación avanzada y métodos numéricos 9
  • 10. Estructuras autoreferenciadas struct nodo { int dato; struct nodo *anterior; // apuntador al mismo tipo de estructura struct nodo *siguiente; }; 15/02/12 Programación avanzada y métodos numéricos 10
  • 11. Estructuras autoreferenciadas struct nodo nodo1, nodo2; nodo1.dato = -5; nodo1.siguiente = &nodo2; // asignamos dirección de memoria nodo2.dato = 67; nodo2.anterior = &nodo1; printf(“Dato del nodo anterior a 2: %i”, nodo2.anterior->dato); 15/02/12 Programación avanzada y métodos numéricos 11
  • 12. Bibliografía  Deitel, H. Y Deitel, P. Cómo programar en C. Prentice Hall. 15/02/12 Programación avanzada y métodos numéricos 12