《C++程序设计》第4章数组.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章导读 前面我们介绍的数据都是基本数据类型,如整型、字符型、浮点型等。存放这些简单类型数据的变量称为简单变量。每个变量有一个单独的名字,系统给它们分配一存储单元,通过变量名来实现数据的存取。 然而在实际应用中往往需要处理同一性质的成批数据,C++支持数组处理来满足这一需求。数组本身并不是一种数据类型,而是一种其他类型的构造类型。 数 组 所谓数组,就是一组类型相同的变量。它用一个数组名标识,每个数组元素都是通过数组名和元素的相对位置—下标来引用。数组可以是一维的,也可以是多维的。 观察以下系列变量: int a1,a2,a3,…,a10 这是一组int类型变量,我们可以定义以下数组来代替这些变量: int a[10]; 这就是数组,该数组包括以下元素: a[0],a[1],a[3],…,a[9] 其中下标从0开始,和前面不同的是,这些变量统一共享一个数组名a。 下面我们具体研究。 4.1 数组的基本概念 一维数组用于存储一行或一列的数据。定义方式如下: 类型 数组名 [常量表达式]; 类型:数组元素的数据类型,可以是int,char,float等简单类型,以及后面我们要学到的结构体、类等复杂类型。 数组名:数组的标示,命名规则同变量名。 常量表达式:用来定义数组的长度,因为数组也必须先定义再使用。 例如: int a[10]; char s[100]; 4.2 一维数组 4.2 一维数组 定义数组时需要注意: 1.数组长度用常量表达式来定义,不能使用变量来动态定义,以下方法是错误的: int n=10; int a[n]; 2.定义数组的同时可以对数组初始化。以下初始化的方法都是允许的: int a[10]={1,2,3,4,5,6,7,8,9,10}; //全部元素都初始化 int a[]={1,2,3,4,5,6,7,8,9,10}; //全部元素都初始化,可以省略长度说明 int a[10]={1,2,,4,5};//部分元素a[0]、a[1]、a[3]、a[4]初始化 4.2 一维数组 使用数组时需要注意: 1.数组元素的下标从0开始。 int a[10]; 则自然计数的第i个元素是:a[i-1],例如第5个元素是a[4]。有的教科书也成第一个元素为第0元素,这种说法将会导致歧义,a[4]变成第4元素,但不是第4个元素。 n个元素的数组,其最大下标是n-1,如上面的数组,最后一个元素是a[9],不存在a[10]这个元素。 2.数组名不能像变量一样进行赋值操作。以下用法是错误的: int a[10],b[10]; a=b; //错误 #include iostream using namespace std; int main() { int a[10]; int max,min; float sum=0,aver; coutinput 10 numbers: ; for (int i=0;i10;i++) cina[i]; max=min=a[0]; for (i=0;i10;i++) { if (a[i]max) max=a[i]; else 【例4.1】编程对一维数组求最大值、最小值、平均值。 else if (a[i]min) min=a[i]; sum+=a[i]; } aver=sum/10; coutmax is maxendl; coutmin is minendl; coutaverage is averendl; return 0; } 二位数组用于存放矩阵形式的数据,如二维表格等数据。 定义二维数组的格式如下: 类型 数组名 [常量表达式1][常量表达式2]; 例如: int a[3][4]; // 3×4的矩阵,共12个元素 float f[5][10]; 以上和一维数组相似, 定义了一组变量,只不过这些变量有行和列的排列。如int a[3][4]的排列如下: a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] a[1][1] a[1][2] a[1][3] a[2][0] a[2][1] a[2][2] a[2][3] 4.3 二维数组和多维数组 二维数组的初始化形式可以有: int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; //完全初始化 int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12}; //省略行的完全初始化 int a[3][4]={{1,2,3

文档评论(0)

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

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

1亿VIP精品文档

相关文档