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文档。上传文档
查看更多
第7章 数组 7.1 数组的概念 7.2 数组的定义 7.3 数组的赋值与输入输出 7.4 数组的应用 7.5 字符数组与字符串 7.6 数组作为函数的参数 本章小结 7.1 数组的概念 把具有相同类型的一批数据看成是一个整体,叫作数组(Array)。给数组取一个名字叫数组名。所以数组名代表一批数据。数组中的每一个数据称为数组元素,它可通过顺序号(下标)来区分。例如,一个班60名学生的成绩组成一个数组g,每个学生的成绩分别表示为: g[0],g[1],g[2],…,g[i],…,g[59] 又如某厂5个车间全年各季度的产量组成数组p,每个车间每季度的产量分别表示为: p[0][0],p[0][1],p[0][2],p[0][3] … p[4][0],p[4][1],p[4][2],p[4][3] 在这里,区分g数组的元素需要一个顺序号,故称为一维数组,而区分p数组的元素需要两个顺序号,故称为二维数组。 7.2 数组的定义 7.2.1 一维数组 1.一维数组的定义 一维数组的定义形式为: 类型符 数组名[常量表达式]; 其中,方括号中的常量表达式的值表示数组元素的个数。常量表达式中可以包括字面常量和符号常量以及由它们组成的常量表达式,但必须是整型。方括号之前的数组名是一个标识符。类型符指明数组元素的类型。 2.一维数组元素的引用 一维数组元素的引用形式为: 数组名[下标] 显然一个数组元素的引用代表一个数据,有时称这种形式的变量为下标变量,它和简单变量等同使用。 C语言规定,数组元素的下标从0开始。在引用数组元素时要注意下标的取值范围。当定义数组元素的个数为M时,下标值取0到M-1之间的整数。例如上面定义的a数组共10个元素,下标值为0~9之间的整数。 下标可以是整型常量、整型变量或整型表达式。 3.一维数组的初始化 (1)顺序列出数组全部元素的初值。 数组初始化时,将数组元素的初值依次写在一对花括号内。 (2)只给数组的前面一部分元素设定初值。 (3)当对全部数组元素赋初值时,可以不指定数组元素的个数。 7.2.2 二维数组 1.二维数组的定义 二维数组的定义形式为: 类型符 数组名[常量表达式][常量表达式]; C语言把二维数组看作是一种特殊的一维数组。对于上述定义的数组a,把它看作是具有2个元素的一维数组:a[0]和a[1],每个元素又是一个包含3个元素的一维数组。通常,一个n维数组可看作是一个一维数组,而它的元素是一个(n-1)维的数组。C语言对多维数组的这种观点和处理方法,使数组的初始化、引用数组的元素以及用指针表示数组带来很大的方便。 2.二维数组元素的引用 二维数组元素的引用形式为: 数组名[下标][下标] 通常,n维数组元素的引用形式为数组名之后连续紧接n个“[下标]”。如同一维数组一样,下标可以是整型常量、变量或表达式。各维下标的下界都是0。 3.二维数组的初始化 二维数组的初始化方法有以下几种: (1)按行给二维数组赋初值。 (2)按元素的排列顺序赋初值。 (3)对部分元素赋初值。 (4)如果对数组的全部元素都赋初值,定义数组时,第一维的元素个数可以不指定。 7.2.3 数组的存储结构 进行数组的定义就是让编译程序为每个数组分配一片连续的内存单元,以用来依次存放数组的各个元素。对一维数组来说,各个元素按下标由小到大顺序存放,对二维数组来说,先按行的顺序,再按列的顺序依次存放各个元素。每个元素占用几个字节的存储单元,取决于数组的数据类型,同一个数组的各个元素占用相同字节数的存储单元。 图7-1 数组的存储结构 对于多维数组,它的元素在内存中的存放顺序为:第一维的下标变化最慢,最右边的下标变化最快。 7.3 数组的赋值与输入输出 7.3.1 数组的赋值 在C语言中,只能逐个对数组元素赋值,不能直接对数组名赋值。例如,定义了int i,a[5];后,要将100、200、300、400、500存入数组a中,可用如下程序段实现: for(i=0;i5;i++) a[i]=(i+1)*100; 或 a[0]=100,a[1]=200,a[2]=300,a[3]=400,a[4]=500; 7.3.2 数组的输入输出 一般用循环结构实现数组的输入输出,循环变量控制数组的下标,对各个元素逐个进行。例如,下面的程序段可实现一维数组的输入: float x[10]; int i; for(i=0;i10;i++) scanf(“%f”,x[i]); /*x[i]前面一定要加上地址运算符“”*/ 二维数组的输入输出则要用二重循环

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档