Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Arreglos con Structs | Comprensión de Structs y Memoria
Dominio de las Estructuras en C

bookArreglos con Structs

Crear un arreglo de estructuras no difiere de crear un arreglo con otros tipos de datos.

El acceso a los elementos de dicho arreglo es similar al de los arreglos ordinarios por índices.

struct Person {
    char name[50];
    int age;
    double height;
};

struct Person people[2];

Como ejemplo, se creará un arreglo de estructuras que almacenará información sobre una persona.

main.c

main.c

copy
12345678910111213141516171819202122232425262728293031323334353637
#include <stdio.h> #include <string.h> // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; strcpy(people[0].name, "Alice"); people[0].age = 25; people[0].height = 1.75; strcpy(people[1].name, "Bob"); people[1].age = 30; people[1].height = 1.80; strcpy(people[2].name, "Charlie"); people[2].age = 35; people[2].height = 1.70; // output information about people from the array for (int i = 0; i < 3; ++i) { printf("Person %d:\n", i + 1); printf("Name: %s\n", people[i].name); printf("Age: %d\n", people[i].age); printf("Height: %.2f\n", people[i].height); printf("\n"); } return 0; }

Cada elemento del arreglo people representa una estructura Person independiente. Podemos acceder a los campos de una persona específica utilizando el índice del arreglo, por ejemplo: people[0].name o people[1].age.

Luego recorremos todo el arreglo utilizando un ciclo for y mostramos la información de cada persona en pantalla.

El uso de arreglos de estructuras permite almacenar múltiples objetos del mismo tipo en un solo lugar y acceder fácilmente a ellos por índice, lo cual es especialmente útil al trabajar con grandes conjuntos de datos.

Tarea

Swipe to start coding

Implementar una función calculateWarehouseTotal que calcule el valor total de todos los productos almacenados en un almacén. Cada producto tiene un nombre, cantidad y precio. La función debe iterar a través del arreglo de productos y calcular la suma de quantity * price para todos los artículos.

  1. Dentro de la función calculateWarehouseTotal, crear una variable total inicializada en 0.0f.
  2. Utilizar un ciclo for para iterar desde el índice 0 hasta n.
  3. Para cada producto, multiplicar quantity por price y sumar el resultado a total.
  4. Devolver el valor final de total como el costo total del almacén.

Solución

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you show me how to initialize the array of structures with data?

How do I print all the information for each person in the array?

Can you explain how to modify a specific field in one of the structures?

close

bookArreglos con Structs

Desliza para mostrar el menú

Crear un arreglo de estructuras no difiere de crear un arreglo con otros tipos de datos.

El acceso a los elementos de dicho arreglo es similar al de los arreglos ordinarios por índices.

struct Person {
    char name[50];
    int age;
    double height;
};

struct Person people[2];

Como ejemplo, se creará un arreglo de estructuras que almacenará información sobre una persona.

main.c

main.c

copy
12345678910111213141516171819202122232425262728293031323334353637
#include <stdio.h> #include <string.h> // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; strcpy(people[0].name, "Alice"); people[0].age = 25; people[0].height = 1.75; strcpy(people[1].name, "Bob"); people[1].age = 30; people[1].height = 1.80; strcpy(people[2].name, "Charlie"); people[2].age = 35; people[2].height = 1.70; // output information about people from the array for (int i = 0; i < 3; ++i) { printf("Person %d:\n", i + 1); printf("Name: %s\n", people[i].name); printf("Age: %d\n", people[i].age); printf("Height: %.2f\n", people[i].height); printf("\n"); } return 0; }

Cada elemento del arreglo people representa una estructura Person independiente. Podemos acceder a los campos de una persona específica utilizando el índice del arreglo, por ejemplo: people[0].name o people[1].age.

Luego recorremos todo el arreglo utilizando un ciclo for y mostramos la información de cada persona en pantalla.

El uso de arreglos de estructuras permite almacenar múltiples objetos del mismo tipo en un solo lugar y acceder fácilmente a ellos por índice, lo cual es especialmente útil al trabajar con grandes conjuntos de datos.

Tarea

Swipe to start coding

Implementar una función calculateWarehouseTotal que calcule el valor total de todos los productos almacenados en un almacén. Cada producto tiene un nombre, cantidad y precio. La función debe iterar a través del arreglo de productos y calcular la suma de quantity * price para todos los artículos.

  1. Dentro de la función calculateWarehouseTotal, crear una variable total inicializada en 0.0f.
  2. Utilizar un ciclo for para iterar desde el índice 0 hasta n.
  3. Para cada producto, multiplicar quantity por price y sumar el resultado a total.
  4. Devolver el valor final de total como el costo total del almacén.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4
single

single

some-alt