LENGUAJE C
Estructura
(Función Struct)
La Palabra clave struct es usada para la declaracion de estructuras. Una estructura es una colección de una o varias variables (miembros de la estructura) que han sido agrupadas bajo un solo nombre para facilitar su manejo. Las variables no tienen que ser del mismo tipo ni deben ser variables simples. Las estructuras también pueden contener arreglos, apuntadores y otras estructuras.
La Palabra clave struct identifica el inicio de una definición de estructura. Es seguida por una etiqueta, que es el nombre de la estructura. A continuación de la etiqueta se encuentran los miembros de la estructura encerrados entre llaves.
Una instancia, la estructura también puede ser definida. Si se define sin la instancia es solo una plantilla, que puede ser utilizada posteriormente en un programa para declarar estructuras.
Sintaxis
Struct etiqueta {
Miembros de la estructura
/*Además se puede agregar enunciados adicionales*/
} instancia;
Las estructuras se pueden crear según cada necesidad por lo que a continuación damos unos ejemplos:
Ejemplo1:
Este programa crea la estructura llabada nombres en los que se podran capturar hasta 4 personas con los siguientes datos nombre, apellido y sueldo, donde los dos primeros tienen como maximo 25 caracteres y el sueldo como entero.
|
/*Programa de Manejo de Una estructura Basica*/ #include<stdio.h> #include<conio.h>
main() { int contador; struct nombres { char nombre[25],apellido[25]; int sueldo;
};
struct nombres nomina[3];
|
Se usa struct para crear la estructura y nombre que se desee dar. Se declaran las variables como: nombre, apellido con 25 caracteres y sueldo como entero. Se llama a la estructura y se usuara con el indicador nomina con 3 datos aunque en arreglos se cuenta también el 0, por lo que tendrá 4 elementos. |
|
For (contador=0; contador<=3;contador++) { printf("\nDeme el Nombre: "); scanf("%s",nomina[contador].nombre); printf("\nDeme el Apellido: "); scanf("%s",nomina[contador].apellido); printf("\nDeme el Sueldo: "); scanf("%s",nomina[contador].sueldo);
} |
Usando un ciclo (en este caso for) que comience en 0 hasta 3 (que es el último dato a capturar).Dentro del ciclo se comienza a capturar los diferentes datos note que para pedir por ejemplo el nombre en el scanf se pone el nombre del arreglo nomina, se habré corchete, el contador, se cierra corchete, el punto y el nombre de la variable que se desea capturar. nomina[contador].nombre |
|
for (contador=0; contador<=3;contador++) { printf("\n%d %s %s %s", contador, nomina[contador].nombre, nomina[contador].apellido, nomina[contador].sueldo); }getche(); } |
Este ciclo tiene como fin la impresión de los datos que fueron almacenados anteriormente. Usando un ciclo (en este caso for) que comience en 0 hasta 3 (que es el último dato que se capturo).Note que en el printf se colocan las variables según el orden en que se desea que aparezcan, además poen igual que el scanf: nombre del arreglo nomina, se habré corchete, el contador, se cierra corchete, el punto y el nombre de la variable que se desea capturar. nomina[contador].nombre nomina[contador].apellido nomina[contador].sueldo |