Home > Backend Development > C++ > What is the nested structure in C language?

What is the nested structure in C language?

WBOY
Release: 2023-09-05 23:13:06
forward
1467 people have browsed it

What is the nested structure in C language?

Structures within structures (or) nested structures

A structure within another structure is called a nested structure.

Consider the following example,

>
struct emp{
   int eno;
   char ename[30];
   float sal;
   float da;
   float hra;
   float ea;
}e;
Copy after login

All items that are part of a quota can be grouped together and declared under a substructure as shown below.

stuct emp{
   int eno;
   char ename[30];
   float sal;
   struct allowance{
      float da;
      float hra;
      float ea;
   }a;
}e;
Copy after login

The innermost member of a nested structure can be accessed by changing all related structure variables (from outermost to innermost) using the dot operator.

Program

The following program demonstrates nested structures (structures within structures) -

Live Demo

#include<stdio.h>
//Declaring outer and inter structures//
struct Person//Main Structure//{
   char Name[500];
   int Age;
   char Gender;
   char temp;//To clear buffer//
   struct Address//Nested Structure//{
      char Apartment[500];
      char Street[500];
      char City[100];
      char State[100];
      int Zipcode;
   }a[20];//Nested Structure Variable//
   }p[20];//Main Structure Variable//
void main(){
   //Declaring variable for For loop//
   int i;
   //Reading User I/p//
   for (i=1;i<3;i++){//Declaring function to accept 2 people&#39;s data//
      printf("Enter the Name of person %d : ",i);
      gets(p[i].Name);
      printf("Enter the Age of person %d : ",i);
      scanf("%d",&p[i].Age);
      scanf("%c",&p[i].temp);//Clearing Buffer//
      printf("Enter the Gender of person %d : ",i);
      scanf("%c",&p[i].Gender);
      scanf("%c",&p[i].temp);//Clearing Buffer//
      printf("Enter the City of person %d : ",i);
      gets(p[i].a[i].City);
      printf("Enter the State of person %d : ",i);
      gets(p[i].a[i].State);
      printf("Enter the Zip Code of person %d : ",i);
      scanf("%d",&p[i].a[i].Zipcode);
      scanf("%c",&p[i].temp);//Clearing Buffer//
   }
   //Printing O/p//
   for (i=1;i<3;i++){
      printf("The Name of person %d is : %s</p><p>",i,p[i].Name);
      printf("The Age of person %d is : %d</p><p>",i,p[i].Age);
      printf("The Gender of person %d is : %c</p><p>",i,p[i].Gender);
      printf("The City of person %d is : %s</p><p>",i,p[i].a[i].City);
      printf("The State of person %d is : %s</p><p>",i,p[i].a[i].State);
      printf("The Zip code of person %d is : %d</p><p>",i,p[i].a[i].Zipcode);
   }
}
Copy after login

Output

Enter the Name of person 1 : Enter the Age of person 1 : Enter the Gender of person 1 : Enter the City of person 1 : Enter the State of person 1 : Enter the Zip Code of person 1 : Enter the Name of person 2 : Enter the Age of person 2 : Enter the Gender of person 2 : Enter the City of person 2 : Enter the State of person 2 : Enter the Zip Code of person 2 : The Name of person 1 is :
The Age of person 1 is : 0
The Gender of person 1 is :
The City of person 1 is :
The State of person 1 is :
The Zip code of person 1 is : 0
The Name of person 2 is :
The Age of person 2 is : 0
The Gender of person 2 is :
The City of person 2 is :
The State of person 2 is :
The Zip code of person 2 is : 0
Copy after login

The above is the detailed content of What is the nested structure in C language?. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template