物聯網學習教程—二維數組的引用

 二維數組元素的表示形式爲:編程

  數組名[下標][下標]數組

  例如:a[2][3]3d

  下標能夠是整型表達式,如a[2-1][2*2-1]cdn

  不要寫成a[2,3],a[2-1,2*2-1]形式視頻

  數組元素能夠出如今表達式中,也能夠被賦值blog

  例如:b[1][2]=a[2][3]/2教程

  在使用數組元素時,應該注意下標值應在已定義的數組大小的範圍內。it

  常出現的錯誤有:io

  int a[3][4];/定義a爲3×4的數組/class

  ┆

  a[3][4]=3;

  數據類型

  數組名[常量表達式1][常量表達式2]={初始化數據};

  能夠用下面4種方法對二維數組初始化:

  1.分行給二維數組賦初值。

  例如:int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

  2.能夠將全部數據寫在一個花括號內,按數組排列的順序對各元素賦初值。

  

  4.若是對所有元素都賦初值,則定義數組時對第一維的長度能夠不指定,但第二維的長度不能省。

  例如: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[][4]={{0,0,3},{},{0,10}};

  

  二維數組程序舉例

  例一、將一個二維數組行和列元素互換,存到另外一個

  二維數組中。

  #include<stdio.h>

  void main()

  {

  int a[2][3]={{1,2,3},{4,5,6}};

  int b[3][2],i,j;

  printf(″array a:\n″);

  for(i=0;i<=1;i++)

  {

  for(j=0;j<=2;j++)

  {

  printf(″%5d″,a[i][j]);

  b[j][i]=a[i][j];

  }

  printf(″\n″);

  }

  printf(″array b:\n″);

  for(i=0;i<=2;i++)

  {

  for(j=0;j<=1;j++)

  printf("%5d″,b[i][j]);

  printf(″\n″);

  }

  }/程序結束/

  

  例2:有一個3×4的矩陣,要求編程序求出其中值最大的那個元素的值,以及其所在的行號和列號。

  

  程序:

  #include<stdio.h>

  void main()

  {

  int i,j,row=0,colum=0,max;

  int a[3][4]={{1,2,3,4},{9,8,7,6},

  {-10,10,-5,2}};

  max=a[0][0];

  for(i=0;i<=2;i++)

  for(j=0;j<=3;j++)

  if(a[i][j]>max)

  {max=a[j];

  row=i;

  colum=j;

  }

  printf(″max=%d,row=%d,colum=%d\n″,

  max,row,colum);

  }/程序結束/

  最後:

  關注回覆「物聯網」便可獲取物聯網全套視頻教程

相關文章
相關標籤/搜索