介紹C 二維陣列初始化的方法和示例

2021-12-29 16:30:28 字數 2946 閱讀 3780

c#二維陣列定義並初始化語法結構

變數型別[,] 陣列名 = new 變數型別[一維元素個數,二維元素個數],...}

如定義乙個二維陣列(第一緯長度為2,第二緯長度為3)並初始化:

int[,] a2=new int[,],};

c#陣列簡介

// 定義乙個一維陣列

int array1 = new int[5];

// 定義乙個一維陣列並賦值

int array2 = new int ;

// 替代語法

int array3 = ;

// 定義乙個二維陣列

int[,] multidimensionalarray1 = new int[2, 3];

// 定義二維陣列並賦值: 注意兩個陣列的個數要

int[,] multidimensionalarray2 = , };

// 定一乙個交錯陣列

int jaggedarray =int jaggedarray = new int[6];

// 可定義可變長度的數

jaggedarray[0] = new int[4] ;

jaggedarray[1] = new int ;

陣列具有以下屬性:

陣列可以是一維、多維或交錯的。

數值陣列元素的預設值設定為零,而引用元素的預設值設定為 null。

交錯陣列是陣列的陣列,因此,它的元素是引用型別,初始化為 null。

陣列的索引從零開始:具有 n 個元素的陣列的索引是從 0 到 n-1。

陣列元素可以是任何型別,包括陣列型別。

陣列型別是從抽象基型別 array 派生的引用型別。由於此型別實現了 ienumerable 和 ienumerable)>),因此可以對 c# 中的所有陣列使用 foreach 迭代。

c#二維陣列的兩種初始化方法

方法1:假設乙個初始長度,在對陣列新增元素的時候,你都需要對陣列做邊界檢查,如果陣列尺寸不夠了,你需要建立乙個新的陣列,然後複製原來的陣列到新的陣列。

方法2:初始化第一維長度為0,在每次插入新的原始的時候,都複製乙個新的陣列,使它的長度等於原來陣列長度+1,這裡假定第二維是不變的。

1、列印乙個[4,6]長度的二維陣列:

using system;

class matrix

}for(int i=0;i<4;i++)

",arr[i,j]);

}console.writeline();}}

}2、二維陣列給datatable賦值

[stathread]

static void main(string args),,

,};datatable dttable = new datatable("testdt");

datacolumn mydatacolumn;

mydatacolumn = new datacolumn();

mydatacolumn.datatype = system.type.gettype("system.string");

mydatacolumn.columnname = "col1";

mydatacolumn.caption = "col1";

dttable.columns.add(mydatacolumn);

mydatacolumn = new datacolumn();

mydatacolumn.datatype = system.type.gettype("system.string");

mydatacolumn.columnname = "col2";

mydatacolumn.caption = "col2";

dttable.columns.add(mydatacolumn);

//賦值

for (int i=0;i<4;i++)

、",arrstr[i,j]);

drrow[j] = arrstr[i,j];

}dttable.rows.add(drrow);

dttable.acceptchanges();

console.writeline();

}//讀資料

for (int i=0;i

、",dttable.rows[i][j]);

}console.writeline();

}console.readline();

}二維陣列的初始化的方法

1、分行初紿化

int a[2][5]=,};

這種賦值方法比較直觀,把第乙個花括號內的資料給第一行的元素,第二個花括號內的資料給第二行的元素,

2、不分行初始化

可以將所有資料寫在乙個花括號內,按陣列排列的順序對個元素賦初值。如:int a[2][5]=;

3、部分初始化

int a[2][5]=,};

其餘元素值自動為0。賦初值後陣列各元素為:

1 3 5 0 0

2 4 6 0 0

4、省略行數

對陣列中的全體元素都賦初值時,二維陣列的定義中第一維的長度也可以省略,但二維的長度不能省略。如:

int a[2][3]=;

等價於:int a[3]=;

但不能寫成:int a[2]=;

在分行初始化時,由於給出的初值已清楚的表明了行數和各行中元素的個數,因此第一維的大小可以不定義。如:int b[3]=,,};顯然這是乙個三行三列的陣列,其各元素的值為:

1 0 0

0 2 0

3 2 1

二維陣列中的資料是按行形式存放在記憶體中。

qt 二維陣列初始化 C 陣列初始化方法

定義 int pia new int 10 array of 10 uninitialized ints 此 new 表示式分配了乙個含有 10 個 int 型元素的陣列,並返回指向該陣列第乙個元素的指標,此返回值初始化了指標 pia。在自由儲存區中建立的陣列物件是沒有名字的,只能通過其位址間接地訪...

二維陣列的初始化

1.使用兩個for迴圈定義 for i 1 i n i 2.定義時初始化 int a n m 3.使用函式定義 memset 作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或陣列進行清零操作的一種最快方法 memset函式對陣列只能用於置零 0 或置負一 1 操作 include voi...

二維陣列的初始化

1.不分行的初始化,所有陣列元素放在一對 內 1 全部元素初始化 a 2 3 2 部分元素初始化 a 2 3 未初始化的元素預設為0,即a 1 1 0,a 1 2 0。3 省略一維長度下標時的初始化 行下標 a 3 陣列元素個數除以列數,正好除盡,所得的商就是行數。a 3 陣列元素個數除以列數,除不...