Explain the concept of an array within a structure in C programming


An array of structure in C programming is a collection of different datatype variables, grouped together under a single name.

General form of structure declaration

The structural declaration is as follows −

struct tagname{
   datatype member1;
   datatype member2;
   datatype member n;
};

Here, struct is the keyword.

tagname specifies the name of structure.

member1, member2 specifies the data items that make up structure.

Example

The following example shows the usage of array within a structure in C programming −

struct book{
   int pages;
   char author [30];
   float price;
};

Example

Following is the C program to demonstrate the use of an array within a structure −

 Live Demo

#include <stdio.h>
// Declaration of the structure candidate
struct candidate {
   int roll_no;
   char grade;
   // Array within the structure
   float marks[4];
};
// Function to displays the content of
// the structure variables
void display(struct candidate a1){
   printf("Roll number : %d
", a1.roll_no);    printf("Grade : %c
", a1.grade);    printf("Marks secured:
");    int i;    int len = sizeof(a1.marks) / sizeof(float);    // Accessing the contents of the    // array within the structure    for (i = 0; i < len; i++) {       printf("Subject %d : %.2f
",       i + 1, a1.marks[i]);    } } // Driver Code int main(){    // Initialize a structure    struct candidate A= { 1, 'A', { 98.5, 77, 89, 78.5 } };    // Function to display structure    display(A);    return 0; }

Output

When the above program is executed, it produces the following result −

Roll number : 1
Grade : A
Marks secured:
Subject 1 : 98.50
Subject 2 : 77.00
Subject 3 : 89.00
Subject 4 : 78.50

Updated on: 19-Mar-2021

4K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements