正文

C++ 入门 第5章 5.3 二维数组的定义和引用2008-09-18 16:10:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/yzrj/38342.html

分享到:


 

具有两个下标的数组称为二维数组。有些数据要依赖于两个因素才能惟一地确定,例如有3个学生,每个学生有4门课的成绩,显然,成绩数据是一个二维表,如书中表5.1所示。
想表示第3个学生第4门课的成绩,就需要指出学生的序号和课程的序号两个因素,在数学上以S3,4表示。在C++中以s3][4]表示,它代表数据73
 
5.3.1 定义二维数组
定义二维数组的一般形式为
类型标识符 数组名[常量表达式][常量表达式]
例如
float a3][4,b5][10];
定义a3×4(34)的单精度数组,b5×10(510)的单精度数组。注意不能写成float a3,4],b5,10;C++对二维数组采用这样的定义方式,使我们可以把二维数组看作是一种特殊的一维数组:它的元素又是一个一维数组。例如,可以把a看作是一个一维数组,它有3个元素:a0,a1,a2],每个元素又是一个包含4个元素的一维数组,见图5.4a0,a1,a2]是3个一维数组的名字。
 
5.4
上面定义的二维数组可以理解为定义了3个一维数组,即相当于
float a04,a14,a24
此处把a0,a1,a2]作一维数组名。C++的这种处理方法在数组初始化和用指针表示时显得很方便,这在以后会体会到。
 
C++中,二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。图5.5表示对a3][4]数组存放的顺序。
 
C++允许使用多维数组。有了二维数组的基础,再掌握多维数组是不困难的。例如,定义三维数组的方法是
 
float a2][3][4;   
定义float型三维数组a,它有2×3×4=24个元素。多维数组元素在内存中的排列顺序:第一维的下标变化最慢,最右边的下标变化最快。例如,上述三维数组的元素排列顺序为
a0][0][0]→a0][0][1]→a0][0][2]→a0][0][3]→a0][1][0]→a0][1][1]→a0][1][2]→a0][1][3]→a0][2][0]→a0][2][1]→a0][2][2]→a0][2][3]→a1][0][0]→a1][0][1]→a1][0][2]→a1][0][3]→a1][1][0]→a1][1][1]→a1][1][2]→a1][1][3]→a1][2][0]→a1][2][1]→a1][2][2]→a1][2][3

阅读(6544) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册