[理学]第六章 数组.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第六章 数组

6 数组 本章重点: ·一维数组与二维数组的定义、初始化以及数组元素的引用 ·字符数组的定义、初始化以及数组元素的引用 ·字符串处理函数的使用 本章难点: ·数组下标与数组长度的区别 ·字符串与字符数组的区别 ·数组应用的一些基本算法 数组是指具有相同类型的数据组成的序列,是有序集合。数组是一种最简单的构造类型,其成员称为“数组元素”,每个数组元素都可以被当作单个变量来使用。一个数组的各元素具有相同的数组名,但具有不同的下标。数组在内存中占有连续的存储单元。本章主要介绍一维数组、二维数组以及字符数组的定义、数组元素的引用以及数组应用的一些基本算法。 6.1 一维数组 6.1.1一维数组的定义 当数组中的每个元素只带有一个下标时,称为一维数组。数学中的向量、级数等都可使用一维数组来表示。与使用变量相同,在使用数组前必须定义,数组定义的形式为: 类型标识符 数组名[常量表达式]; 说明: 1) 类型标识符用来定义数组元素的类型,可以是任何基本数据类型,如int、float、char等,也可以是以后介绍的指针或构造类型; 2) 数组名是用户定义的数组标识符,必须遵循标识符的命名规则,并且在一个函数内,数组名不能与变量名相同; 例如: ①int a[5],b[A]; /* a和b为数组名,分别包含5个、65个整型数组元素 */ ②#define N 10 float x[N*3]; /* 实型数组x有30个元素 */ 下面的定义是非法的: ①int 567[10]; /* 不符合标识符的命名规则 */ ②float x(10); /* 不能使用圆括弧说明数组长度 */ ③int m=5; double y[m]; /* 不能使用变量m说明数组长度 */ ④int a[5.9]; /* 不能使用实型数说明数组长度 */ ⑤float x[max(3,8)]; /* 不能使函数max(3,8)说明数组长度 */ ⑥main() { int a; float a[5]; /* 数组名a不能与变量名a相同 */ …… } 4) 数组名和变量名可以同时出现在一个定义语句中,例如: int m,n,a[5]; 6.1.2一维数组元素的引用 当定义了一维数组之后,就可以引用这个一维数组中的任何元素。引用方式如下: 数组名[下标] 其中,下标是数组元素在整个数组中的顺序号,从0开始;下标可以是整型常量、整型变量或整型表达式,也可以是字符表达式或后面介绍的枚举类型表达式。例如,若有以下定义语句: int a[5]; 则说明数组a共有5个元素,分别表示为a[0]、a[1]、a[2]、a[3]、a[4],但a[5]不是数组a的元素。 对数组元素的引用与普通变量一样,可以对它们进行赋值、输入输出,也可以在表达式中使用。下面有关数组元素的引用都是合法的。 a[0]=l0+2; a[l]=a[0]+a[3]; scanf(%d,a[3]); a[C-A]=8; /* 等效于a[2]=8 */ a[n*2]=a[0]+a[2*2]; /* n为整型变量 */ printf(%d\n,a[4]); 例6-1 输出一维数组的全部元素。 main() { int s[10]; int i; for (i=0; i=9; i++) s[i]=i*i; for (i=0; i=9; i++) printf(%4d,s[i]); } 运行结果为: 0 1 4 9 16 25 36 49 64 81 上例中,使用for循环语句为一个含有10个元素的int型数组s进行赋值,然后利用for循环语句将数组s中的所有元素打印出来。这是对数组元素进行操作的最基本算法。 在引用数组元素时,应注意以下几点: 1) 一个数组元素实质上就是一个变量名,代表内存中的一个存储单元。 2) 一个数组不能整体引用。例如对于例6-1中所定义的数组s,不能用数组名s来代表s[0]到s[9]这10个元素进行输入输出。 3) C语言程序在运行过程中,系统并不自动检验数组元素的下标是否越界。如将例6-1中的“i=9”改为“i=15”,程序照样能够运行。由于下标越界,可能会造成不可预料的程序运行结果。 6.1.3一维数组的存储与初始化 (1) 一维数组的存储 C编译程序为每个数组在内存开辟一片连续的存储空间,各数组元素按下标从小到大连续排列

您可能关注的文档

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档