三、结构变量的初始化 struct stud i long num; char name 10e char sex: short age int score4];/四门课程的成绩* } studentI={98183341;“ zhang san”,m’,18,{80,90,78,86}}; struct stud student2={98183342;“Lisi”,m’,18,{85,91,88,87}; 注意:初值表中各初始化表达式的类型应与定义成员的类型 对应
三、结构变量的初始化 struct stud { long num; char name[10]; char sex; short age; int score[4]; /*四门课程的成绩*/ } student1={98183341;“zhang san”,’m’,18,{80,90,78,86}}; struct stud student2={98183342;“Li Si”,’m’,18,{85,91,88,87}}; 注意:初值表中各初始化表达式的类型应与定义成员的类型一 一对应
8.1.2结构的引用 、引用结构变量 (1)同类型的结构变量可以相互赋值。 例 struct stud sl=98183341, Zhang san",'m, 18,, 78, 869 struct stud s2={98183342,“Lisi,m3,18,85,91,88,87},s3; s3=s1;sl=s2;s2=s3; 注:s1={98183341;“ zhang san”,m’,18,{80,90,78,86};非法语句
8.1.2 结构的引用 一、引用结构变量 (1) 同类型的结构变量可以相互赋值。 例: struct stud s1= {98183341,“zhang san”,’m’,18,{80,90,78,86}};, struct stud s2=={98183342,“Li Si”,’m’,18,{85,91,88,87}},s3; s3=s1;s1=s2;s2=s3; 注:s1= {98183341;“zhang san”,’m’,18,{80,90,78,86}};非法语句
student &student num 4字节 &student num (2)结构变量可以取 name10字节 地址。 student name 结构变量也分配连续存 student 储单元,例 s1字节 &student. age age2字节 truct stud student student score score4*4字 &student score 0l
(2) 结构变量可以取 地址。 结构变量也分配连续存 储单元,例: struct stud student; num 4字节 name 10字节 sex(1) 1 字节 age 2 字节 score 4*4 字 节 student &student &student.num student.name &student.sex &student.age student.score &student.score[0]
成员选择运算符“及结构的引用 形式:结构变量名成员名 struct stud si, sInum=98183341; scanf(“ld”,& sInum) strcpy( sI name,“ zhang san”); scanf(“%s”,sl.name) Slsex- m, scant(%c”,&sl.sex); sIage=18: scanf(%hd, &sl age) sl score[0=80 scanf("%d, &sl score 0D; SI score I=87; scanf(“%d”,& sI score[1]); sI score[2=90; scanf( %d", &sl score 2D); sI score3=95; scanf(%d, &sl score 3 D;
二、成员选择运算符‘.’及结构成员的引用 形式: 结构变量名.成员名 struct stud s1; s1.num= 98183341; scanf(“%ld”,&s1.num); strcpy(s1.name,“zhang san”); scanf(“%s”,s1.name); s1.sex=’m’; scanf(“%c”,&s1.sex); s1.age=18; scanf(“%hd”,&s1.age); s1.score[0]=80; scanf(“%d”,&s1.score[0]); s1.score[1]=87; scanf(“%d”,&s1.score[1]); s1.score[2]=90; scanf(“%d”,&s1.score[2]); s1.score[3]=95; scanf(“%d”,&s1.score[3]);
二、嵌套的结构 结构成员可以是结构,形成结构的嵌套形式。 strout date char month name 4; Iint day; int year; struct studi long num; char name 10l; char sex: struct date birthday; int score 4;)
二、嵌套的结构 结构成员可以是结构,形成结构的嵌套形式。 strcut date{ char month_name[4]; int day; int year; } struct nstud{ long num; char name[10]; char sex; struct date birthday; int score[4]; }