程序设计基础C语言第2版ppt课件.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

武昌首义学院信息科学与工程学院;;三口之家的衣柜;;;8.1 结构体问题的引出;;【思考】是否有一种数据类型,可将不同数据类型的数据集中在一起,从而很方便地实现一个学生的信息集中在一张纸上,另一个学生的信息集中在另一张纸上……呢?;8.2 结构体类型和结构体类型变量;8.2结构体类型和结构体类型变量;8.2.1 结构体类型的声明;8.2.2 结构体类型变量的定义;(2)在声明结构体类型的同时定义变量例如:;(3)不写结构体名,直接定义结构体类型变量。例如:;8.2.3 结构体的嵌套;8.3 结构体类型变量的引用和初始化;(2)当出现结构体的嵌套时,必须以级联方式访问结构体变量成员。;(3)对结构体变量的成员可以像普通变量一样进行各种运算。;(4)结构体类型变量的初始化

前面我们学习了如何初始化变量和数组,例如:;也可以在声明结构体类型的同时,完成结构体变量的定义和初始化操作,即:;当出现结构体嵌套时,结构体类型变量的初始化方式为:;8.4 结构体数组;(2)定义结构体数组

struct studentstuArr[4];

数组所占的内存空间为4*sizeof(structstudent)个字节。结构体数组stuArr的内存分布图。;(3)初始化结构体数组

可以在定义结构体数组的同时进行初始化,例如:;【程序8-1】有N个学生的信息(包括编号、姓名、性别、年龄、语文成绩、

数学成绩和英语成绩),要求按照语文成绩由高到低的顺序输出各学生的信息。;;;;29;8.5.1 指向结构体类型变量的指针;引用结构体中的成员有三种方式。

(1)成员运算符(即圆点运算符.)结构体类型变量.成员名;8.5.2 指向结构体数组的指针;可以定义指向结构体数组的指针,例如:;【程序8-2】利用指向结构体数组的指针计算学生各科的平均成绩。;;;/*输出各科的平均成绩*/for(i=0;i3;i++)

{

ave[i]=sum[i]/N;printf(%8s%7.2f\n,name[i],*(ave+i));

}

return0;

};8.6 结构体与函数;【程序8-3】有N个学生的信息(包括编号、姓名、性别、年龄、语文成绩、

数学成绩和英语成绩),要求输出3门课(语文、数学和英语)的平均成绩最高的学生的信息。

【问题分析】

用max函数来实现如下功能:求各个学生3门课的平均成绩,返回平均成绩最高的学???。

max函数可以采用两种方法来声明。

(1)方法一:structstudentmax(structstudentstuArr[],intn);

方法一中函数参数传递的是结构体数组,即结构体数组的首地址,此时形参和实参结构体数组共享同一片内存空间。;;;;(2)方法二:structstudent*max(structstudent*p,intn);;;;46;47;8.8.1 问题的引出;8.8.1 共用体问题的引出;8.8.2 声明共用体类型和定义共用体类型的变量;定义共用体类型变量有三种实现方式:

(1)先声明共用体类型,然后定义共用体类型变量;8.8.3 共用体成员的引用

共用体变量成员引用的形式为:共用体变量名.成员名;如果接着对共用体变量s中的point成员赋值并输出两个成员的值:;采用级联的访问方式如下:stu.s.grade;8.9 枚举类型;(2)枚举类型变量的赋值和初始化;(3)枚举类型变量的输出

枚举常量标识符代表的是一个整数值,它们可以用于使用整数值的任何场合,但不能将其作为字符串直接输出。例如:;;;8.10 typedef;;使用typedef来定义别名的好处是:

可以减少关键字struct的经常性重复使用。可以通过非常有意义的名字来命名新类型,从而增强程序的可读性。

用typedef建立基本数据类型的别名。例如,需要让整数占4个字节的程序在一种系统上可能要用int类型,而在另一种系统上可能要用long类型。为可移植性而设计的程序经常用typedef建立4个字节的整数的别名。如:typedef int Integer;

一次性修改程序中的别名Integer可以使程序在另一个系统中运行,从而提高编码的效率。;;8.11.1 链表问题的引出;8.11.1 链表问题的引出;8.11.2 链表的定义和特点;data;8.11.3 链表的创建;节点2;;【程序8-7】链表的创建、输出和释放;;;;;intmain()

{

structnode*head=NULL;head=create(); /*创建链表*/display(head); /*显示链表中节点信息*/destroy(head); /*释放链表节点信息*/return0;

};8.11.4 链表的删除操作;2;③如果找到待

文档评论(0)

132****2812 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档