文档详情

第八章 结构体与共用体.pptx

发布:2025-03-07约4.71千字共66页下载文档
文本预览下载声明

第八章结构体与共用体;8.1概述;8.1概述;8.1概述;8.1概述;8.1概述;8.1概述;8.1概述;8.1概述;8.2定义结构体类型的方法;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.1定义结构体类型的变量;8.2.2定义结构体数组;8.2.2定义结构体数组;8.2.2定义结构体数组

结构体数组的定义方法和结构体变量的定义方法相同

可以先定义一个结构体,然后用该结构体类型来定义数组,也可以在定义结构体的同时定义结构体数组。;8.2.2定义结构体数组

定义结构体数组一般形式是

①struct结构体名

{成员表列}数组名[数组长度];

②先声明一个结构体类型,然后再用此类型定义结构体数组:

结构体类型数组名[数组长度];;8.2.2定义结构体数组;这两种形式功能相同,都是定义一个含有3个元素的结构体数组如图8.1。

;8.3.1.结构体变量的引用

8.3.2结构体数组的元素引用;一般对结构体变量的引用都转化为对结构体中的成员的引用,由于结构中的成员都依赖于一个结构体变量,因此使用结构体中的成员必须指出访问的结构体变量。一般引用形式为:

结构体变量名.结构成员名

;例如:给stu数组中的第一个元素赋值:

strcopy(str[0].xh,);

strcopy(stu[0].xm,”李绯”);

stu[0].sx=85;

stu[0].yw=90;

stu[0].yy=78;

stu[0].jsj=92;

以上都是结构体中对成员变量的引用。;数组中的每一个元素作为一个下标变量,所以可以通过结构体数组元素去访问结构体中的成员。

一般形式是:

结构体数组名[下标].成员名;

;例如:给stu数组中的第一个元素赋值:

strcopy(str[0].xh,);

strcopy(stu[0].xm,”李绯”);

stu[0].sx=85;

stu[0].yw=90;

stu[0].yy=78;

stu[0].jsj=92;

;strcopy(str[0].xh,);

strcopy(stu[0].xm,”李绯”);

stu[0].sx=85;

stu[0].yw=90;

stu[0].yy=78;

stu[0].jsj=92;

;8.4结构体的初始化;8.4结构体的初始化;8.4.1结构体变量的初始化;例8.1对结构体address的变量str1进行初始化,并输出str1的各成员值。

解题思路:

自己建立一个结构体类型,包括有关地址信息的各成员

用它定义结构体变量,??时赋以初值

在main()函数中输出该结构体变量的各成员;#includestdio.h

structaddress

{charname[20];charadd[30];

unsignedlongphone;intzip;

}stu1={张力,北京市东城区东四北大街108号,123456”};

intmain()

{

printf(姓名:%s\n,stu1.name);

printf(“家庭地址:%s\n”,stu1.add);

printf(“电话:%ld\n”,stu1.phone);

printf(“邮政编码:%d\n”,stu1.zip);

return0;

};#includestdio.h

structaddress

{charname[20];charadd[30];

unsignedlongphone;intzip;

}stu1={张力,北京市东城区东四北大街108号,123456”};

intmain()

{

printf(姓名:%s\n,stu1.name);

printf(“家庭地址:%s\n”,stu1.add);

printf(“电话:%ld\n”,stu1.phone);

printf(“邮政编码:%d\n”,stu1.zip);

return0;

};#includestdio.h

structaddress

{charname[20

显示全部
相似文档