设为首页 加入收藏

TOP

8.4.1 二维数组的理解
2013-10-12 09:24:37 来源: 作者: 【 】 浏览:126
Tags:8.4.1 二维数 理解

8.4  二维数组与多维数组

如果数组的每一个元素是一个一维数组,则这个数组就是一个二维数组。在二维数组中,变量可以理解成行和列的关系。用同样的方法,可以构造出多维数组。

8.4.1  二维数组的理解

二维数组可以理解成一个多行多列的表格,每一个单元格中存储了一个变量。可以同一维数组一样定义二维数组。下面的代码定义了一个4行5列的整型数组。

  1. 01  int a[4][5]; 

可用表8.3来表示这个数组的行和列存储关系。

如表8.3所示,可以用数组的下标访问二维数组的每一个元素。范例8-8所示的代码使用for循环对这个二维数组进行赋值与输出。

提示:二维数组可以认为是数组的数组,即一维数组的元素又是一个一维数组。

表8.3  二维数组

  < xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

0

1

2

3

4

0

a[0][0]

a[0][1]

a[0][2]

a[0][3]

a[0][4]

1

a[1][0]

a[1][1]

a[1][2]

a[1][3]

a[1][4]

2

a[2][0]

a[2][1]

a[2][2]

a[2][3]

a[2][4]

3

a[3][0]

a[3][1]

a[3][2]

a[3][3]

a[3][4]

【范例8-8】使用for语句为二维数组赋值并输出,实例代码如下所示。

实例代码8-8

  1. 01  #include <stdio.h> 
  2. 02  int main()  
  3. 03  {  
  4. 04      int i=10 , m , n ;                      /*定义程序中的变量。*/  
  5. 05      int a[4][5];                            /*定义一个四行五列的二维数组。*/  
  6. 06      for(m=0;m<4;m++)                        /*用变量m从0到3进行行循环。*/  
  7. 07      {     
  8. 08         for(n=0;n<5;n++)                     /*变量n从0到4进行列循环。*/  
  9. 09         {  
  10. 10            a[m][n]=i;                        /*数组中变量赋值。*/  
  11. 11            i++;                              /*i自加。*/  
  12. 12         }  
  13. 13      }  
  14. 14      for(m=0;m<4;m++)                        /*变量m的行循环。*/  
  15. 15      {  
  16. 16         for(n=0;n<5;n++)                     /*变量n的列循环。*/  
  17. 17         {  
  18. 18           printf("a[%d][%d]=%d  ",m,n,a[m][n]);  /*输出变量名变量值。*/  
  19. 19         }  
  20. 20         printf("\n");                        /*每行输出一个换行。*/  
  21. 21      }  
  22. 22      return 0;  
  23. 23  }  

【执行结果】输入下面的命令,编译这个程序。
  1. gcc 8.8.c 

输入下面的命令,运行这个程序。
  1. ./a.out 

程序的运行结果如下所示。
  1. a[0][0]=10  a[0][1]=11  a[0][2]=12  a[0][3]=13  a[0][4]=14  
  2. a[1][0]=15  a[1][1]=16  a[1][2]=17  a[1][3]=18  a[1][4]=19  
  3. a[2][0]=20  a[2][1]=21  a[2][2]=22  a[2][3]=23  a[2][4]=24  
  4. a[3][0]=25  a[3][1]=26  a[3][2]=27  a[3][3]=28  a[3][4]=29  

【代码解析】代码第05行定义二维数组,代码第06~13行用for循环的嵌套实现为二维数组元素赋值,代码第14~22行用for循环的嵌套打印二维数组的元素值。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇8.4.2 二维数组与指针 下一篇8.3.2 指针的算术运算

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: