Page 46 - 高中 信息技术 选择性必修1 数据与数据结构
P. 46

第二章 数据的存储方式                                                                                                                                                                                                   2.2 数据的顺序存储与组织









                             {
                              if(a[i]!=0)      //只输出系数不为0的项
                              {

                               cout<<a[i]<<"x^"<<i<<" ";
                               if(i>0) cout<<"+";   //如果不是常数项则输出加号
                              }
                             }

                           }
                           2.二维数组
                                             广东教育出版社
                           数组的下标可以是一个,也可以是多个。当数组有两个下标时,就称为二维数组。二
                      维数组可以看成一维数组的嵌套,即首先把它看作一个一维数组,这个数组的每个元素又

                      是一个一维数组。如一个二维数组b,可看成为某个一维数组共有n个元素,分别是b[0],
                      b[1],…,b[n-1],其中每个元素b[i](0≤i<n)又是一个有m个元素的一维数组,分别是b[i]

                      [0], b[i][1],…,b[i][m-1]。从逻辑结构上,我们也可以把这个二维数组看成一个n行m列的
                      矩阵,并把第一个下标称为行下标,第二个下标称为列下标。

                           在C++语言中,二维数组的一般定义方式为:
                           类型说明符 数组名[常量表达式1][常量表达式2];

                           其中,“类型说明符”是任一种数据类型,“数组名”是用户定义的数组标识符,
                      “常量表达式1”表示第一维的长度,“常量表达式2”表示第二维的长度。例如:

                           int b[4][3];


                           #define maxrows 10

                           #define maxcolumns 20
                           float f2[maxrows][maxcolumns];
                           如已定义一个二维数组b:

                           int b[4][3];

                           则b为4行3列的整数型二维数组,b的所有数组元素如下:
                           b[0][0],b[0][1],b[0][2]
                           b[1][0],b[1][1],b[1][2]
                           b[2][0],b[2][1],b[2][2]

                           b[3][0],b[3][1],b[3][2]
                           虽然二维数组在逻辑结构上具有行与列两个方向,但它作为一种顺序结构,所有元素

                      在计算机内存空间中的物理存储地址仍是连续的。如在n行m列的二维数组b中,每个数据
                      元素占用d个字节,假设b的第一个数据元素的计算机存储地址为Loc(b[0][0]),那么b的存储

                      结构如图2-5所示。

              38  38







          21X2204.indd   38                                                                                        2019/9/26   13:53:06
   41   42   43   44   45   46   47   48   49   50   51