Arrays with Structs
Creating an array from structures is no different from creating an array with other data types.
Accessing the elements of such an array is similar to that of ordinary arrays by indexes.
struct Person {
char name[50];
int age;
double height;
};
struct Person people[2];
As an example, let's create an array of structures that will store information about a person.
main.c
1234567891011121314151617181920212223242526272829303132333435363738#include <stdio.h> #include <string.h> // for the strcpy function // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; // declaring an array of structures 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; }
Swipe to start coding
- Initialize a variable that will indicate the number of structures to be created;
- Create a pointer variable and place in it the address of an allocated memory location for a given number of structures in the array.
- Write code to autofill a dynamically created array with numbers from 0 to a number indicating the number of structures;
- Display the fields of all created structures in an array;
- Free allocated memory.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Riassuma questo capitolo
Explain code
Explain why doesn't solve task
Awesome!
Completion rate improved to 4.17
Arrays with Structs
Scorri per mostrare il menu
Creating an array from structures is no different from creating an array with other data types.
Accessing the elements of such an array is similar to that of ordinary arrays by indexes.
struct Person {
char name[50];
int age;
double height;
};
struct Person people[2];
As an example, let's create an array of structures that will store information about a person.
main.c
1234567891011121314151617181920212223242526272829303132333435363738#include <stdio.h> #include <string.h> // for the strcpy function // structure definition struct Person { char name[50]; int age; double height; }; int main() { // declaring an array of structures struct Person people[3]; // declaring an array of structures 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; }
Swipe to start coding
- Initialize a variable that will indicate the number of structures to be created;
- Create a pointer variable and place in it the address of an allocated memory location for a given number of structures in the array.
- Write code to autofill a dynamically created array with numbers from 0 to a number indicating the number of structures;
- Display the fields of all created structures in an array;
- Free allocated memory.
Soluzione
Grazie per i tuoi commenti!
Awesome!
Completion rate improved to 4.17single