C程序设计教学做一体化教程_第7章_ 数组.pptVIP

C程序设计教学做一体化教程_第7章_ 数组.ppt

  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文档。上传文档
查看更多
* * 3. 简单示例 杨辉三角的前6行如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 例子4输出杨辉三角的前10行。 * * 7.4.2 能力目标 能初始化二维数组,使用二维数组处理数据。 * * 7.4.3 任务驱动 1.任务的主要内容 有5名学生的成绩,表7.1中 每行依次是5学生的四科成绩: 编写程序,将总成绩最高的排在表的第一行,即表按总成绩降序排列。输出时输出每行的总成绩。 * * 2.任务的模板 仔细阅读、调试模板程序,完成实践环节。模板程序的运行效果如图7.19。 任务的模版 * * 3.任务小结或知识扩展 对于二维数组同样需要注意下标越界问题,二维数组含有的行数的索引从0开始,因此,二维数组含有的m行分别是第0行,第1行…第m-1行,没有第m行。简单地说,如果二维数组含有m×n个元素,那么在进行双下标运算时,第一个下标的索引从0至m-1,第二个下标的索引从0至n-1。 。 * * 7.4.4 实践环节 编写程序,将数学成绩最高的排在表的第一行,即将表按数学成绩降序排列。 (参考代码见附录A) * * * * C程序设计教学做一体化教程 耿祥义 张跃平 编著 清华大学出版社 * * 第7章 数组 主要内容 ? 一维数组 ? 数组名做参数 ? 数组排序 ? 二维数组 * * 7.1.1 核心知识点 1.定义数组 可如下定义一个int型的数组: int a[10]; 操作系统将为数组a分配10个元素,即10个变量,其类型都是int型,每个元素占4个字节(因为int型变量占4个字节)。数组名使用下标运算访问它的元素,下标索引从0开始。即a[0],a[1]…a[9]依次是数组a中的10个元素(10个int型变量)。 定义一维数组的格式如下: 数组类型 数组名[字面常量或符号常量或常量表达式]; 7.1 一维数组 * * 对于如下定义的一维数组: int a[5]; 那么a一共有5个元素,每个元素占4个字节。如果元素a[0],即变量a[0]的地址是1001,那么元素a[1]的地址就是1005,依此类推,a[2]的地址是1009,a[3]的地址就是1013,a[4]的地址就是1017(见图7.1),也就是说,数组的首元素(a[0])的地址最小,末元素(a[4])的地址最大(变量所占内存中的首字节的地址号为变量的地址)。 2.初始化 (1)大括号括起的若干个值的数量等于数组的长度。例如: int a[3] = {1,2,3}; (2)大括号括起的若干个值的数量小于数组的长度。那么,在大括号中没有对应值的数组元素的值默认被初始化为0。例如: int a[6] = {1,2,3}; (3)初始化时省略数组的长度。例如: int a[] = {1,2,3}; 等价于: int a[3] = {1,2,3}; 如果希望定义数组时就同时初始化数组,即让数组元素的值是程序可以预知的值,可以把大括号括起的、用逗号分隔的若干个值指定为数组元素的初始值,即让数组元素依次取大括号中的值。 3.关于数组名 数组名是只读变量。 当数组名不是函数的参数时,操作系统认为数组名是一个变量的名字,但认为这个变量是一个只读变量(数组名做参数的情况在7.2节讨论),并让这个只读变量存放数组的第一个元素的地址。 当如下定义数组: int a[5]; 后,完整的内存模型如图7.2所示,示意图中的箭头示意数组可以通过下标运算访问它的元素,左面用深色填充的区域表示的是只读变量a的内存,右面是数组a的元素:a[0]至a[4]的内存。 * 3. 简单示例 例子1 使用数组存放Fibonacci数列,然后输出数组的元素的值以及数组名表示的地址。运行效果如图7.3。 * * 7.1.2 能力目标 使用一维数组存放数据、并处理所存放的数据. * * 7.1.3 任务驱动 1.任务的主要内容 有20人参加数学考试。编写程序,用数组存储这20人的考试成绩(百分制),并对成绩进行评估。 在main函数中声明类型是double、名字为score、长度为20的一维数组. 使用循环语句让用户输入20人的成绩。 计算20人的成绩的平均值。 输出一个最高成绩、一个最低成绩。 输出考试不及格的(60分以下)人数。 2.任务的模板 按着任务核心内容完成模板:将【代码】替换为

文档评论(0)

676200 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档