How to Create an Array of Structs in C?
Last Updated :
11 Mar, 2024
In C, a structure is a user-defined data type that can be used to group items of different types into a single entity while an array is a collection of similar data elements. In this article, we will learn how to create an array of structs in C.
Creating an Array of Structs in C
To create an array of structs, we first need to define the struct type and then declare an array of that type using the below syntax.
Syntax to Create an Array of Structure in C
// Define the struct
struct StructName {
dataType1 member1;
dataType2 member2;
// more members...
};
// Declare an array of structs
struct StructName arrayName[arraySize];
Here,
StructName
is the name of the struct.
dataType1
, dataType2
are the data types of the members of the struct.
member1
, member2
are the names of the members of the struct.
arrayName
is the name of the array of structs.
arraySize
is the size of the array.
C Program to Create an Array of Structs
The below program demonstrates how we can create an array of structs in C.
C
#include <stdio.h>
struct Student {
int id;
char name[50];
};
int main()
{
int size = 5;
struct Student myArray[size];
for ( int i = 0; i < size; i++) {
myArray[i].id = i + 1;
snprintf(myArray[i].name, sizeof (myArray[i].name),
"Student%d" , i + 1);
}
printf ( "Array Elements:\n" );
for ( int i = 0; i < size; i++) {
printf ( "Element %d: ID = %d, Name = %s\n" , i + 1,
myArray[i].id, myArray[i].name);
}
return 0;
}
|
Output
Array Elements:
Element 1: ID = 1, Name = Student1
Element 2: ID = 2, Name = Student2
Element 3: ID = 3, Name = Student3
Element 4: ID = 4, Name = Student4
Element 5: ID = 5, Name = Student5
Time Complexity: O(N), here N is the number of elements present in the array
Auxiliary Space: O(N)
Share your thoughts in the comments
Please Login to comment...