二維陣列的本質其實就是乙個元素是一維陣列的一位陣列。
元素型別
陣列名[
行數][
列數];
元素初始化:
1). 全部初始化.
a. 先宣告,再使用下標來初始化.
b. 在宣告的同時,就初始化陣列的每乙個元素. *****
int arr[3][4] =
,//第0行的資料
,//第1行的資料
//第2行的資料.};
裡面的大括弧,就表示1行.
10 20 30 40
50 60 70 80
90 100 110 120
c. 上面這種方式初始化的時候.可以省略行數. ********
int arr[4] =
,//第0行的資料
,//第1行的資料
//第2行的資料.};
根據大括弧的個數,編譯器來自動確定行數.
d. 直接省略裡面的大括弧.編譯器根據行數和列數自動判斷哪些屬於哪1行的.
int arr[3][4] = ;
e. 上面的那種初始化方式 可以省略行數.編譯器根據列數和資料的個數自動計算行數.
int arr[4] = ;
2). 部分初始化.
a. int arr[3][4] = ,,};
初始化指定行的資料. 那麼其他的元素就會被自動初始化為0.
10 0 0 0
20 0 0 0
30 0 0 0
b. int arr[3][4] = ; *****
按照順序去初始化每1個元素其他的元素的值就會被自動初始化為0
10 20 30 40
50 0 0 0
0 0 0 0
c. int arr[4] = ;
省略行數,自動根據後面的元素的個數來計算行.
其他的元素自動初始化為0
10 20 30 40
50 0 0 0
d. int arr[3][4] = ,[2]=};
給指定的行初始化,其他的元素自動初始化為0
0 0 0 0
10 20 30 40
50 60 70 80
e. int arr[3][4] = ;
給指定的元素賦值.其他的元素自動初始化為0
0 20 0 0
0 0 0 60
0 0 0 0
二維陣列的低位元組的位址就是這個二維陣列的位址.
也就是第0行的位址. 也就是第0行的第0個元素的位址.
二維陣列名就代表 這個二維陣列的位址.
二維陣列的位址==二維陣列名==二維陣列的第0行的位址==二維陣列的第0行的第0個元素的位址== 二維陣列的低位元組的位址.
3 二維陣列的長度以及行列計算
1). 求二維陣列的長度. 除以元素的個數.
用二維陣列占用的總的位元組數除以每1個元素占用的位元組數.
2). 求行數
二維陣列的每1行占用的位元組數是一樣的.
所以.用總的位元組數除以每1行占用的位元組數.就可以去到行數.
3). 求列數.
每1行的總位元組數除以每1個元素的位元組數.
求長度: 行數 * 列數.
1). 在宣告二維陣列的同時使用大括弧初始化陣列的元素,這個時候行數可以省略.
記住,列數不能省略.
2). 在宣告二維陣列的同時 如果不使用大括弧初始化元素 那麼就必須要寫行數和列數.
C語言基礎二維陣列
1 二位陣列的定義int array n m 行下標的取值範圍是0 n 1,列下標的取值範圍是0 m 1,二維陣列最大下標元素是array n 1 m 1 如定義乙個3行4列的陣列 int array 3 4 二位陣列在引用時也要注意數界限的問題。2 二維陣列的初始化 1 可以將所有元素解除安裝乙個...
C語言基礎 二維陣列,三維陣列
一 二維陣列 1.二維陣列的定義 資料型別 陣列名 行 列 2.二維陣列有幾行,就代表有幾個一維陣列.int a 2 3 a 0 對應的元素是1,2,3 二維陣列的元素也是通過下標來訪問的,行和列的下標都是從0開始的,a 0 0 表示陣列a的第乙個元素.3.二維陣列的元素的個數 行數 列數 4.二維...
C語言二維陣列
int main int argc,const char argv int array 5 建立乙個二維陣列 型別修飾符陣列名 包含幾個小陣列 每個小陣列有多少個元素 初始值如何寫?int array 3 4 一維陣列可以省略元素個數,二維陣列只能省略第一位 第乙個 3 可以不寫 第二種初始值寫法 ...