结构体与链表.PPT

结构体与链表.PPT

ID:45737702

大小:247.50 KB

页数:32页

时间:2019-11-17

结构体与链表.PPT_第1页
结构体与链表.PPT_第2页
结构体与链表.PPT_第3页
结构体与链表.PPT_第4页
结构体与链表.PPT_第5页
资源描述:

《结构体与链表.PPT》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、结构体数据类型与链表教学目的要求:1、理解结构体类型的定义和使用2、熟练使用结构体类型变量3、理解掌握指向结构体变量的指针和指向结构体数组元素的指针重点、难点:1、理解结构体类型的定义和使用2、熟练使用结构体类型变量3、理解掌握指向结构体变量的指针和指向结构体数组元素的指针结构体定义结构体变量的方法结构体变量的引用结构体变量的初始化结构体数组指向结构体数据的指针用指针处理链表如:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[3

2、0];};structstudentstudent1,student2;1、先定义(声明)结构体类型,再定义变量名定义结构体类型变量的方法struct结构体类型名{成员表列};struct结构体类型变量名;结构体类型名结构体变量名说明:(1)结构体变量后,系统会为之分配内存单元,所分配单元数为各个成员项所需存储单元数的总和。(2)将一个变量定义为一个标准类型(基本数据类型)与定义为结构体类型不同在于后者不仅要求指定变量为结构体类型,而且要求指定为某一特定的结构体类型(如structstudent)。(3)如果程序规模

3、比较大,往往将对结构体类型的声明集中放到一个文件(以.h为后缀的“头文件”)中。2、在声明类型的同时定义变量如:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;struct结构体类型名{成员表列}变量名表列;3、直接定义结构体类型变量struct{成员表列}变量名表列;如:struct{intnum;charname[20];charsex;intage;floatscore;cha

4、raddr[30];}student1,student2;关于结构体类型的几点说明:(1)类型与变量是不同的概念,对结构体变量来说,在定义时一般先定义一个结构体类型,然后定义一个变量为该类型。只能对变量赋值、存取或运算,而不能对一个类型赋值、存取或运算。在编译时,对类型是不分配空间的,只对变量分配空间。(2)对结构体中的成员(即“域”),可以单独使用,它的作用与地位相当于普通变量。(3)成员也可以是一个结构体变量。structdate{intmonth;intday;intyear;};structstudent{i

5、ntnum;charname[20];intage;structdatebirthday;charaddr[30];}student1,student2;(4)成员名可与程序中的其他变量名相同,二者不代表同一对象。结构体变量的引用1、引用方式为:结构体变量名.成员名“.”是成员(分量)运算符,它在所有运算符中优先级最高,用于对结构体变量中各个成员项的引用如已定义student1为结构体变量并且它们已有值,则引用各个成员项:student.namestudent.sex注意:不能将一个结构体变量作为一个整体进行输入和输

6、出,对结构体变量进行引用时,只能对结构体变量中的各个成员分别引用,不能这样引用:printf(“%d,%s,%c,%d,%f,%s”,student1);2、对成员变量可以像普通变量一样进行各种运算(根据其类型决定可以进行的运算)。student.age++;3、如果成员本身又属于一个结构体类型,则要用若干个成员运算符,一级一级地找到最低的一级的成员。只能对最低级的成员进行赋值或存取以及运算。structdate{intmonth;intday;intyear;};structstudent{intnum;cha

7、rname[20];charsex;intage;structdatedirthday;charaddr[30];}student1,student2;4、结构体变量占据的一片存储区域的首地址称为该结构体型变量的地址,每个成员占据若干单元的首地址称为该成员的地址。程序中可以引用成员的地址,也可以引用结构体变量的地址。scanf(“%d”,&student1.num);printf(“%o”,&student1);结构体变量的初始化对结构体变量进行初始化。例如:structstudent{longintnum;char

8、name[20];charsex;charaddr[20];}a={89031,“LiLin”,’M’,”123BejingRoad”};main(){printf(“No.:%ldname:%ssex:%caddress:%s”,a.num,a.name,a.sex,a.addr);}结构体数组1、一个结构体变量中可以存放一组

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。