C 語言中區域性範圍內的結構是什麼?


結構是不同資料型別變數的集合,以單一名稱組合在一起。

結構宣告的一般形式

結構宣告如下 −

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

此處,struct 是關鍵字。

標籤名指定結構的名稱。

member1member2 指定構成結構的資料項。

示例

以下示例演示了在區域性作用域中使用結構。

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

示例

以下程式演示了在區域性作用域中使用結構。

 即時演示

#include<stdio.h>
struct{
   char name[20];
   int age;
   int salary;
   char add[30];
}emp1,emp2;
int manager(){
   struct{ //structure at local scope
   char name[20];
   int age;
   int salary;
   char add[50];
}manager ;
manager.age=27;
if(manager.age>30)
   manager.salary=650000;
else
   manager.salary=550000;
return manager.salary;
}
int main(){
   printf("enter the name of emp1:");
   //gets(emp1.name);
   scanf("%s",emp1.name);
   printf("
enter the add of emp1:");    scanf("%s",emp1.add);    printf("
enter the salary of emp1:");    scanf("%d",&emp1.salary);    printf("
enter the name of emp2:");    // gets(emp2.name);    scanf("%s",emp2.name);    printf("
enter the add of emp2:");    scanf("%s",emp2.add);    printf("
enter the salary of emp2:");    scanf("%d",&emp2.salary);    printf("
emp1 salary is %d",emp1.salary);    printf("
emp2 salary is %d",emp2.salary);    printf("
manager salary is %d",manager());    return 0; }

輸出

執行以上程式時,它會生成以下結果 −

enter the name of emp1:Bob
enter the add of emp1:Hyderabad
enter the salary of emp1:500000
enter the name of emp2:Hari
enter the add of emp2:Chennai
enter the salary of emp2:450000
emp1 salary is 500000
emp2 salary is 450000
manager salary is 550000

更新於: 24-Mar-2021

806 次瀏覽

開啟您的 職業生涯

完成課程即可獲得認證

開始
廣告