ESTRUCTURAS Y UNIONESSugerencias y herramientas para crear para crear y presentar diapositivas enformato panorámico
Contenido Estructuras Acceso a estructuras Estructuras anidadas Arrays de estructuras Utilización de estructuras como pará...
Estructuras Los arrays son estructuras de datos que contienen un numero          y                          q determinado ...
Cont…Cont Una estructura es una colección de uno o mas tipos de elementos denominados miembros, cada uno d l cuales puede ...
Declaración de una estructura Una estructura es un tipo de dato definido por el                            p              ...
Definición de variables de estructuras Al igual que a los tipos de datos enumerados, a una estructura se accede utilizando...
Ejemplo 1. struct colecciones_CD { char titulo[30] ; char artista[25] ; int num_canciones; float precio; char fecha_compra...
Inicialización de una declaración de estructuras  Se puede inicializar una estructura dentro de una  sección de código de ...
El tamaño de una estructura El operador sizeof se aplica sobre un tipo de datos, o bien     p                  p          ...
Acceso a estructuras Almacenamiento de información en estructuras;   Se puede almacenar información en estructuras mediant...
Cont .. Acceso a una estructura mediante el operador puntero   El operador puntero ->, sirve para acceder a los datos de  ...
Lectura de información de una estructura Si ahora se desea introducir la información en la estructura basta con acceder a ...
Recuperación de información de una estructura Se recupera información de una estructura utilizando el operador de asignaci...
Estructuras anidadas Una estructura puede contener otras estructuras llamadas estructuras anidadas. S h d d fi i l miembro...
Ejemplo struct info_dir         struct empleado                                  p                         { {            ...
Ejemplo 9 1        9.1 Se desea registrar una estructura Persona Empleado que contenga como miembros l d         i b     l...
Arrays de estructuras Se puede crear un array de estructuras tal como se crea un array de otros tipos. Mientras que los ar...
Utilización de estructuras como parámetros C permite pasar estructuras a funciones, bien por valor o bien por referencia u...
Uniones Las uniones son similares a las estructuras en cuanto que agrupan una serie d variables, pero l f          i de   ...
Enumeraciones Un enum es un tipo definido por el usuario con constantes de nombre de tipo entero. En la declaración de un ...
Ejemplo 9 2        9.2 El siguiente programa muestra el uso de la enumeración boolean. El programa lee un texto y cuenta l...
CAMPOS DE BIT El lenguaje C permite realizar operaciones con los bits de una palabra. C l campos d bi C permite acceder a ...
Ejercicios Escribe un programa para calcular el numero de días que hay entre dos fechas; declarar fecha como una estructur...
Patrón de prueba de pantalla panorámica (16:9)                               Prueba de la                                r...
Próxima SlideShare
Cargando en…5
×

Clase 10_ programacion

1.013 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
1.013
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
9
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Clase 10_ programacion

  1. 1. ESTRUCTURAS Y UNIONESSugerencias y herramientas para crear para crear y presentar diapositivas enformato panorámico
  2. 2. Contenido Estructuras Acceso a estructuras Estructuras anidadas Arrays de estructuras Utilización de estructuras como parámetros Uniones Enumeraciones Campos de bit Ejercicios E
  3. 3. Estructuras Los arrays son estructuras de datos que contienen un numero y q determinado de elementos y todos los elementos han de ser del mismo tipo de datos. Por ejemplo si se dispone de una lista de temperaturas es muy útil un array sin embargo si temperaturas, array; embargo, se necesita una lista de información de clientes que contengan elementos tales como; el nombre, edad, la g dirección, # de cuenta, los arrays no son adecuados. La solución a este problema es usar un tipo de dato registro, en C llamado estructura
  4. 4. Cont…Cont Una estructura es una colección de uno o mas tipos de elementos denominados miembros, cada uno d l cuales puede ser un tipo d i d i b d de los l d i de dato diferente Supongamos que se desea almacenar los datos de una colección de discos compactos de música. Estos datos pueden ser; Titulo Artista Numero de canciones Precio Fecha de compra
  5. 5. Declaración de una estructura Una estructura es un tipo de dato definido por el p p usuario, que se debe declarar antes de que se pueda utilizar. El formato de la declaración es; Struct <nombre de la estructura> { <tipo de dato mienmbro1><nombre miembro> <tipo de dato mienmbro2><nombre miembro> …. <tipo d d < i de dato mienmbron><nombre miembro>}; i b >< b i b >}
  6. 6. Definición de variables de estructuras Al igual que a los tipos de datos enumerados, a una estructura se accede utilizando una variable o variables que se deben definir después de la declaración de la estructura. Las variables de estructuras se pueden definir de dos formas; Listándolas inmediatamente después de la llave de cierre de la declaración d l estructura d l ió de la t t Listando el tipo de la estructura creado seguido por las variables correspondientes en cualquier lugar del programa antes de utilizarlas ili l
  7. 7. Ejemplo 1. struct colecciones_CD { char titulo[30] ; char artista[25] ; int num_canciones; float precio; char fecha_compra[8]; } cd1, cd2, cd3; 2. t t l i 2 struct colecciones_CD cd1, cd2, cd3; CD d1 d2 d3
  8. 8. Inicialización de una declaración de estructuras Se puede inicializar una estructura dentro de una sección de código de su programa, o bien se puede inicializar la estructura como parte de la definición definición. Cuando se inicializa una estructura como parte de la definición se especifican los valores iniciales definición, iniciales, entre llaves, después de la definición de variables estructura
  9. 9. El tamaño de una estructura El operador sizeof se aplica sobre un tipo de datos, o bien p p p sobre una variable. Se puede aplicar para determinar el tamaño que ocupa en memoria una estructura Void main () { Struct Str ct persona mar mar; Printf (“Sizeof (persona):%dn”,sizeof(mar)); }
  10. 10. Acceso a estructuras Almacenamiento de información en estructuras; Se puede almacenar información en estructuras mediante inicialización, asignación directa o lectura del teclado Acceso a una estructura de datos mediante el operador punto La asignación de datos a los miembros de una variable estructura se h t t hace mediante el operador punto. L sintaxis en C di t l d t La i t i es; <nombre variable estructurada> . <nombre miembro> = datos; Cd1.precio=0.75
  11. 11. Cont .. Acceso a una estructura mediante el operador puntero El operador puntero ->, sirve para acceder a los datos de una estructura a partir de un puntero. Para utilizar este operador se debe definir primero una variable puntero para apuntar a la estructura La asignación de datos a estructuras utilizando el operador puntero ti t tiene el f l formato; t <puntero estructura> -> <nombre miembro>=datos; Ptr_est Nota 8.5; Ptr est->Nota=8.5;
  12. 12. Lectura de información de una estructura Si ahora se desea introducir la información en la estructura basta con acceder a los miembros de la estructura con el operador punto o flecha (puntero) Scanf(“%f”,&z.pr); Scanf(“%f”,&z->pi); S f(“%f” & > i)
  13. 13. Recuperación de información de una estructura Se recupera información de una estructura utilizando el operador de asignación o una sentencia de salida (print (), puts(),..) <nombre de la variable>=<nombre de la variable estrctura>.<nombre miembro> Printf(“”,<nombre variable estructura>-><nombre miembro> X=z.pr; Printf( %f z >pr); Printf(“%f”,z->pr);
  14. 14. Estructuras anidadas Una estructura puede contener otras estructuras llamadas estructuras anidadas. S h d d fi i l miembros comunes solo una vez en id d Se han de definir los i b l su propia estructura y a continuación utilizar esa estructura como un miembro de otra estructura
  15. 15. Ejemplo struct info_dir struct empleado p { { char nombre_emp [ 3 0] ; struct info_dir direccion_emp; char dirección[25] ; double salario; char ciudad[20]; }; struct clientes char provincia [20] ; { long int cod_postal; char nombre_cliente[30]; struct info_dir direccion_clien; }; double saldo; };
  16. 16. Ejemplo 9 1 9.1 Se desea registrar una estructura Persona Empleado que contenga como miembros l d i b los datos d una persona empleado que a su vez de l d tenga los datos de la fecha de nacimiento. En un programa se muestra el uso de la estructura, se define una función para dar entrada a los datos de la entrada y otra función para dar salida a los datos de una estructura persona. A la función de entrada se transmite por dirección (&p) la variable estructura, por lo que el argumento correspondiente tiene que ser un puntero(*p) y el acceso puntero( p) a los campos se hace con el selector ->
  17. 17. Arrays de estructuras Se puede crear un array de estructuras tal como se crea un array de otros tipos. Mientras que los arrays p p proporcionan un medio practico de almacenar diversos p valores del mismo tipo, los arrays de estructuras le p permiten almacenar juntos diversos valores de j diferentes tipos, agrupados como estructuras S Struct info_libro libros[100] [ 00]
  18. 18. Utilización de estructuras como parámetros C permite pasar estructuras a funciones, bien por valor o bien por referencia utilizando el operador & f i ili d l d int main (void) { struct info_persona reg_dat; / * Pasa por referencia la variable * / Entrada_pna(&reg_dat); Entrada pna(&reg dat); / * Pasa por valor * / Ver_info(reg_dat); }
  19. 19. Uniones Las uniones son similares a las estructuras en cuanto que agrupan una serie d variables, pero l f i de i bl la forma d almacenamiento es de l i diferente y, por consiguiente, efectos diferentes. Las uniones, declaradas con la palabra reservada unión, almacenan miembros múltiples en un paquete En una unión todos los miembros se solapan paquete. entre si en la misma posición Unión nombre { Tipo1 miembro1; T b Tipo2 miembro2; .. };
  20. 20. Enumeraciones Un enum es un tipo definido por el usuario con constantes de nombre de tipo entero. En la declaración de un tipo enum se escribe una lista de identificadores que internamente se asocian con las constantes enteras 0,1,2,etc Enum nombre { Enum1, enum2, ….enum_n }; }
  21. 21. Ejemplo 9 2 9.2 El siguiente programa muestra el uso de la enumeración boolean. El programa lee un texto y cuenta las vocales leídas La función vocal() leídas. devuelve true si el carácter de entrada es vocal
  22. 22. CAMPOS DE BIT El lenguaje C permite realizar operaciones con los bits de una palabra. C l campos d bi C permite acceder a un numero d l b Con los de bits i d de bits de una palabra entera. Un campo de bits es un conjunto de bits adyacentes dentro de una palabra entera Struct identificador_campo{ { Tipo nombre1: longitud1; Tipo nombre 2: longitud2; p g ; .. Tipo nombren: longitudn; }
  23. 23. Ejercicios Escribe un programa para calcular el numero de días que hay entre dos fechas; declarar fecha como una estructura estructura. Escribe un programa que permita hacer las operaciones d suma, resta, multiplicación y di i ió i de t lti li ió división de números complejos. El numero complejo a de definirse d fi i como una estructura.
  24. 24. Patrón de prueba de pantalla panorámica (16:9) Prueba de la relación de aspecto (Debe parecer circular) 4x316x9

×