SlideShare una empresa de Scribd logo
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

PPTX
02 representación informacion
PDF
Programación modular
PDF
Actividad de programa 28 06
PPTX
Que es dfd
DOCX
Cuadro sipnotico tipos de computacion paralela
PPTX
Trabajo de informática
PDF
Estructura de datos power point
PPTX
Expandir
02 representación informacion
Programación modular
Actividad de programa 28 06
Que es dfd
Cuadro sipnotico tipos de computacion paralela
Trabajo de informática
Estructura de datos power point
Expandir

Destacado (20)

PPTX
Condicionales multiples o anidadas
PDF
Métodos numéricos- Métodos de Aproximación
PPTX
1.4 software numerico
PPT
Presentación Métodos Numericos
 
PPT
Metodo Numerico
PDF
Laboratorio metodos-numericos-unsch-01
PPT
Codigo octave
PPTX
Introducción a los Métodos Numéricos
PDF
¿MATLAB? Yo uso Octave UPM
PPTX
Introducción a los métodos númericos Clase 1
PPTX
Método de jacobi Metodos Numericos
PPTX
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
PPSX
Raices de ecuaciones Metodos Númericos
PPT
Metodos numericos1
PPTX
Reactor de flujo piston con MATLAB Octave
PDF
Cálculo Raíces Con Octave
PPT
Matematica computacional
PDF
Antologia de metodos numericos isc
PDF
Presentacion metodos numerico teoria de errores
DOC
Metodos Numericos
Condicionales multiples o anidadas
Métodos numéricos- Métodos de Aproximación
1.4 software numerico
Presentación Métodos Numericos
 
Metodo Numerico
Laboratorio metodos-numericos-unsch-01
Codigo octave
Introducción a los Métodos Numéricos
¿MATLAB? Yo uso Octave UPM
Introducción a los métodos númericos Clase 1
Método de jacobi Metodos Numericos
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Raices de ecuaciones Metodos Númericos
Metodos numericos1
Reactor de flujo piston con MATLAB Octave
Cálculo Raíces Con Octave
Matematica computacional
Antologia de metodos numericos isc
Presentacion metodos numerico teoria de errores
Metodos Numericos
Publicidad

Similar a Estructuras (20)

PPTX
Estructuras-structaDadasdasfasdfsdfg.pptx
PDF
Tema-estructuras-c++.pdf
PPT
Estructuras en c++
PDF
Modulo 1- Curso de Estructura (Struct)
PPSX
Unidad%2 bxii estructuras
PDF
ESTRUCTURAS Y UNIONES EN C++
PDF
Clase 10_ programacion
PPT
Estructuras en c++
PPTX
Clase-Modelosfsdfsfsafasfasfsasfsasfffs.pptx
DOC
GuíA De PráCtica 2
PDF
Estructura de Datos
PPT
Tema 9 www.fresymetal.com
PPTX
Estructuras en C
PDF
Estructuras ing. Vanessa Borgas
PDF
Estructuras de datos en Introducción a la Programación
PPT
Curso9 estructuras
PPT
Curso9 estructuras
PPTX
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
PDF
Estructuras
Estructuras-structaDadasdasfasdfsdfg.pptx
Tema-estructuras-c++.pdf
Estructuras en c++
Modulo 1- Curso de Estructura (Struct)
Unidad%2 bxii estructuras
ESTRUCTURAS Y UNIONES EN C++
Clase 10_ programacion
Estructuras en c++
Clase-Modelosfsdfsfsafasfasfsasfsasfffs.pptx
GuíA De PráCtica 2
Estructura de Datos
Tema 9 www.fresymetal.com
Estructuras en C
Estructuras ing. Vanessa Borgas
Estructuras de datos en Introducción a la Programación
Curso9 estructuras
Curso9 estructuras
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructuras
Publicidad

Último (20)

PDF
Tomo 1 de biologia gratis ultra plusenmas
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PPTX
caso clínico iam clinica y semiología l3.pptx
DOCX
Tarea De El Colegio Coding For Kids 1 y 2
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PDF
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
PDF
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PDF
Híper Mega Repaso Histológico Bloque 3.pdf
PDF
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
PDF
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
PDF
Escuela Sabática 6. A través del Mar Rojo.pdf
PDF
biología es un libro sobre casi todo el tema de biología
PDF
ciencias-1.pdf libro cuarto basico niños
PDF
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
Tomo 1 de biologia gratis ultra plusenmas
DI, TEA, TDAH.pdf guía se secuencias didacticas
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
caso clínico iam clinica y semiología l3.pptx
Tarea De El Colegio Coding For Kids 1 y 2
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
Híper Mega Repaso Histológico Bloque 3.pdf
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
Escuela Sabática 6. A través del Mar Rojo.pdf
biología es un libro sobre casi todo el tema de biología
ciencias-1.pdf libro cuarto basico niños
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...

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