方法3直接说明结构变量 struct struct I int number 类型说明成员1; char name 31] 类型说明成员2; short age char sex 类型说明成员n; int grade }变量名列表; char address [10] I student1, student2
方法3 直接说明结构变量 struct { 类型说明 成员1; 类型说明 成员2; … … 类型说明 成员n; } 变量名列表; struct student { int number; char name[31]; short age; char sex; int grade; char address[10]; } student1,student2;
注意: 1)结构体变量可以分为局部变量和全局变量 2)结构体类型的成员可以又是一个构造类型, 即构成了嵌套的结构 如:一个地址可以由邮编和住址组成: struct address int code: char add[10] home number struct student code add [10] int number struct address home
2)结构体类型的成员可以又是一个构造类型, 即构成了嵌套的结构 注意: 如: 一个地址可以由邮编和住址组成: struct address { int code; char add[10]; }; struct student { int number; struct address home; }; number home code add[10] 1)结构体变量可以分为局部变量和全局变量
2.结构体类型数据的引用 规则 1)不能把一个结构体变量进行输入和输出 如: printf(“%d,%s,%,%,%d,%s”, student1) 引用方式:结构体变量名成员名 如: printf(“%d,%s,%d,%c,%d,%s student 1 number student1 name studentI age student 1. sex student grade student1 address)
规则: 1)不能把一个结构体变量进行输入和输出 2.结构体类型数据的引用 如: printf(“%d,%s,%d,%c,%d,%s”,student1); 引用方式:结构体变量名.成员名 如: printf(“%d,%s,%d,%c,%d,%s” , student1.number, student1.name, student1.age, student1.sex student1.grade, student1.address);
规则 2)若成员本身又是一个结构,则必须逐级找到 最低级的成员才能使用 如:前面提到的嵌套结构 student3.home.code即 student3的邮编 student3.home.add即 student3的住址 3)结构体变量成员,与相同类型的普通变量并 无区别,可以像不同变量一样参与各种运算
规则: 2)若成员本身又是一个结构,则必须逐级找到 最低级的成员才能使用 如: 前面提到的嵌套结构 student3.home.code 即student3的邮编 student3.home.add 即student3的住址 3)结构体变量成员,与相同类型的普通变量并 无区别,可以像不同变量一样参与各种运算
例 student1 number=02705201 sum=student1. numbertstudent2 number student age++ strcpy( student3home.add,“ nanJing”);
例: student1.number=02705201; sum=student1.number+student2.number; student1.age++; strcpy(student3.home.add,“nanjing”);