C Array of Structures

Certainly! In C, you can create an array of structures to store multiple instances of a structured data type. Here’s an example of how you can define and use an array of structures:

#include <stdio.h>

// Define the structure
struct Person {
    char name[50];
    int age;

int main() {
    int i;

    // Declare an array of structures
    struct Person people[3];

    // Populate the array
    strcpy(people[0].name, "Alice");
    people[0].age = 25;

    strcpy(people[1].name, "Bob");
    people[1].age = 30;

    strcpy(people[2].name, "Charlie");
    people[2].age = 35;

    // Access and print the array elements
    for (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);

    return 0;

In this example, we have defined a structure called Person, which contains two members: a character array name to store the name of the person, and an integer age to store their age.

Inside the main() function, we declare an array people of Person structures with a size of 3. We then populate the array by assigning values to the name and age members of each structure using the dot (.) operator.

Finally, we use a loop to iterate through the array and print the values of each structure’s members.

Note that you can modify the size of the array (people) and the number of elements you populate it with according to your needs.

Why use an array of structures?

Using an array of structures can be beneficial in several ways:

  1. Grouping related data: Structures allow you to group related data together into a single entity. By creating an array of structures, you can efficiently organize and store multiple instances of that entity.
  2. Easy access and manipulation: Arrays provide a simple and efficient way to access and manipulate a collection of data. With an array of structures, you can easily iterate over the elements and perform operations on each structure, such as updating values or performing calculations.
  3. Simplifying code organization: When dealing with a collection of similar data, using an array of structures can make your code more organized and readable. Each element of the array represents a distinct instance of the structure, and you can access individual members of each structure using the dot (.) operator.
  4. Memory efficiency: Storing multiple instances of a structure in an array allows you to save memory compared to creating individual variables for each instance. This can be particularly useful when dealing with a large number of elements.
  5. Passing arrays to functions: Arrays can be easily passed as function arguments. By using an array of structures, you can pass the entire collection to a function, enabling operations on multiple elements simultaneously.

Overall, using an array of structures provides a convenient and efficient way to manage and process collections of related data, improving code organization, readability, and flexibility.