07 数组和字符串.pptVIP

  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文档。上传文档
查看更多
07 数组和字符串

第7章 数组与字符串 当我们需要处理相关联的一批数据时,基本类型数据就不能进行有效的表示、存储和处理。为了解决这个问题,引入了构造数据类型。数组是构造数据类型中的一种。 数组是由一些相同类型的数据按一定的规则构成的数据类型。它的每个成员称为数组元素,每个数组元素都可作为简单变量来使用。 字符串,是字符的序列。它不是C语言的数据类型,但与数组密切相关。因此,字符串也是本章的一个重要内容。 数组操作中,离不开循环程序技术的配合,两种技术总是密切地联系在一起。 7.1 一 维 数 组 数组是一些同类型数据的有序集合,它们存储在内存的一个连续的存储区内。数组中的每个元素用下标加以区别。所以,数组元素又称为下标变量。 数组下标的个数,称为数组的维数。 7.1.1 一维数组的定义 和其他变量一样,数组也要遵循“先定义后引用”的原则。程序中使用数组时,必须先用数组定义语句对其进行说明。通过定义说明数组的名字,数据类型,维数和容量。 一维数组定义语句的一般格式为: ? 数据类型 数组名[常量表达式]; 常量表达式表示的是数组容量,也叫做数组的长度。它说明数组元素的个数。 当定义了一个数组后,系统就在内存的数据区为它开辟一个连续空间,用来存储各数组各元素的数据。 下标值是从零开始的。作为变量的数组元素,它的下标,既可以是常量表达式,也可以是含变量的表达式,例如,abc[i],abs[i+j]等。 7.1.2 数组元素的引用 数组元素的引用是通过数组下标变量的实现的。下标变量的形式为: 数组名[下标] 例7.1.1 设有整型数组a,其长度为5。编写程序,令5个数组元素的值依次为10, 20,30,40和50并输出数组各元素的值。 这个问题可以用循环结构技术完成。程序如下: ? #include stdio.h main() { int i,a[5]; for(i=1;i=5;i++) a[i-1]=i*10; /*为数组元素赋值*/ for(i=0;i=4;i++) printf(a[%d]=%d\n,i,a[i]); /* 输出数组各元素的值*/ } 可以看到,数组元素的引用是通过数组名和相应的下标引用的。这种引用方法叫作“下标法”。 在程序中引用数组元素时,其下标不能超过该数组定义的长度。C语言系统不进行数组是否超出定义的边界的检查,这个任务由用户自己解决。这就要求程序设计人员必须给数组以足够的容量,当然,还要注意程序的正确性。数组容量不够或程序的错误,都有可能导致数组的运算超出数组的边界。运算超出数组边界是有一定危险的,编程时要特别注意。 7.1.3 一维数组的初始化 在说明数组的同时对数组的元素赋值,这就是数组的初始化。一维数组初始化的一般形式为: 数据类型 数组名[容量]={ 常量表达式1,常量表达式2,…… }; 在对数组的所有元素初始化时,可以不给出数组的容量。在这种情况下,系统会自动按给出初始值(表达式)的个数建立相应容量的数组。这种初始化的一般格式为: 数据类型 数组名[ ]= { 常量表达式1,常量表达式2,…… }; ? 例7.1.2 对实型数组a的10个元素中的前5个元素进行初始化,然后,输出数组每个元素的值。 程序如下: #include stdio.h main() { float a[10]={1.1, 0, 3.1, 0, 5.2}; int i; for(i=0;i10;i++) { printf(%f ,a[i]); printf(\n); } } 程序的输出为: ? 1.100000 0.000000 3.100000 0.000000 5.200000 0.000000 0.000000 0.000000 0.000000 0.000000 7.1.4 一维数组程序设计 一维数组的程序设计,仍然离不开我们已经学过的顺序结构、选择结构和循环结构的设计方法。但在这一节我们更关注的是数组的设计和处理。我们要学习如何根据问题确定所需要的数组,如何处理数组中的各个数组元素。 ? a[0]?a[9] a[1]?a[8]

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档