3.结构体变量的初始化 方法1定义时指定初始值 ma in I struct student int number char name [31] short age char sex char address [10] }a={0308,“1ili”,20,“F,2,“ nanJing”} printf(%dⅦn,%sⅦn,%dn,%cn,%sn”, a number, a. name, a age, a. sex, a. address)
3.结构体变量的初始化 方法1 定义时指定初始值 struct student { int number; char name[31]; short age; char sex; char address[10]; } a={0308,“lili”,20,‘ F’ ,2,“nanjing”}; main() { printf(“%d\n,%s\n,%d\n,%c\n,%s\n” , a.number,a.name,a.age,a.sex,a.address); }
方法2定义时未指定初始值 struct student int number char name [31] short age char sex char address[10] Ja, b a, numbre=0308 a.name[0]=1’;a.name[l]=“i’;… a age=20 a,Sex=M’; a. address[0]=n’;a. address[1]=a’; b=a:
方法2 定义时未指定初始值 struct student { int number; char name[31]; short age; char sex; char address[10]; }a,b; a.numbre=0308; a.name[0]=‘l’;a.name[1]=‘i’;… … a.age=20; a.sex=‘M’; a.address[0]=‘n’; a.address[1]=‘a’;… … b=a;
例 # include“ stdio.h main struct date I int year, month, day f today printf(“%d\n”, sizeof( struct date) 6
例: #include “stdio.h” main() { struct date { int year,month,day; }today; printf(“%d\n”,sizeof(struct date)); } 6
第二节结构体数组 一般形式: struct结构体名 成员列表 }数组名长度;
第二节 结构体数组 struct 结构体名 { 成员列表 } 数组名[长度]; 一般形式:
number name age sex address a[0] 0308|i 20 F nanJIng 例: a 0309 davie 21 shangha struct student iint number char name [31] short age: char sex char address [10] }a[2]= 0308,“1ili”,20,F’,“ nanJing”}, 0309,“ davie”,21,M,“ shanghai”}
例: struct student { int number; char name[31]; short age; char sex; char address[10]; }a[2] a[2]={ ; {0308,“lili”,20,‘ F’ , “nanjing”}, {0309,“davie”,21,‘ M’ , “shanghai”} }; 0308 davie 20 0309 M shanghai lili 21 a[0] F nanjing a[1] number name age sex address