Estructuras en C

Source code c uno

[et_pb_section fb_built=»1″ _builder_version=»3.22″][et_pb_row _builder_version=»3.25″ background_size=»initial» background_position=»top_left» background_repeat=»repeat»][et_pb_column type=»4_4″ _builder_version=»3.25″ custom_padding=»|||» custom_padding__hover=»|||»][et_pb_text _builder_version=»4.4.6″ background_size=»initial» background_position=»top_left» background_repeat=»repeat» hover_enabled=»0″]

Después de programar vectores y matrices para almacenar varios tipos de datos, ahora nos toca el turno de las estructuras, que es un paso más avanzado para almacenar los datos de manera estructurado, limpio y claro. En el ejercicio que pondre adelante, vamos a realizar un programa que almacene en una estructura los datos de un alumno y las notas de 4 asignaturas.

Para definir una estructura en C podemos realizar la siguiente secuencia de código antes del programa principal:

struct asignaturas {
        float programacion;
        float sistemas;
        float fol;
        float redes;
} sAsignaturas;

Con la estructura anterior, si desde el programa principal queremos almacenar el dato float de la variable programacion, tendriamos que referenciarlo de la siguiente manera:

// Definimos primero la estructura en la parte principal del programa
sAsignaturas asig;

asig.programacion = 5.6;

De esta manera almacenamos en la variable «programacion» de la estructura asignaturas, el valor 5.6 que es un float. Imaginaros la potencia que tiene las estructuras, ahora pasando de la teoría a la practica, imaginaros que ahora queremos una estructura que almacene el nombre y apellido de un alumno y esas 4 notas, la forma más coherente de realizarlo con estructuras en C sería:

typedef struct asignaturas {
        float programacion;
        float sistemas;
        float fol;
        float redes;
} sAsignaturas;

typedef struct alumnos {
        char Nombre[60];
        char Apellidos[150];
        sAsignaturas asign;
} sAlumnos;

Si ahora nos vamos al programa principal y hacemos lo mismo que anteriormente para meter un dato en la variable «fol» del alumno Eduardo Urrea, seria de la siguiente manera:

sAlumnos alum;

alum.Nombre = "Eduardo";
alum.Apellidos = "Urrea";
alum.asign.fol = 5.5;

Y si ahora ya le metemos la posibilidad de que sea un vector de varios alumnos, imaginaros la potencia que nos da esto… por ejemplo:

sAlumnos alum[10];

alum[0].Nombre = "Eduardo";
alum[0].Apellidos = "Urrea";
alum[0].asign.fol = 5.6;

alum[1].Nombre = "Francisco";
alum[1].Apellidos = "Perales";
alum[1].asign.fol = 5.6;

Supongo que después de lo ultimo expuesto, podeis haceros una idea de lo que se puede llegar a realizar con estructuras y ARRAYs, de momento os voy a dejar un ejemplo realizado de una aplicación que almacena 10 alumnos con sus notas, y después se pude hacer busquedas o imprimir el total de alumnos con sus notas. Espero que os sirva de ayuda.

Descargar: CÓDIGO FUENTE EJEMPLO[/et_pb_text][/et_pb_column][/et_pb_row][/et_pb_section]

Más para explorar

Antiguas noticias
Código Python

Empezando con python

Hace ya un tiempo que llevo pensando en ponerme con Python, su escalada en Lenguajes más queridos (y más usados) en lo referente a mi