什麼是陣列:變數的組合,是一種批量定義變數的方式
定義:型別 陣列名[數量]
int arr[5]; == int num1,num2,num3,num4,num5;
使用:陣列名[下標]
下標:從0開始,範圍:0~數量-1
遍歷:與for迴圈配合使用
for
(int i =
0; i<
5; i++
)
初始化:型別 陣列名[數量] = ;
1、陣列與普通變數是一樣預設值是的隨機,為安全也要對陣列進行初始化
2、這種初始化語法只能在定義陣列時使用,而且不能整體賦值
3、如果初始化資料過多,編譯器會丟失,並產生警告
4、如果初始化資料不足,編譯器則補0;
5、初始化陣列時長度可以省略,編譯器會自動統計資料的個數,然後告訴陣列
sizeof(arr)/sizeof(arr[0]) == 陣列長度
陣列越界:
為了程式的執行效率,不會檢查陣列的下標
陣列越界的後果:
1、一切正常
2、段錯誤
3、髒資料
一維陣列相當於把變數排成一排,通過編號訪問
二維陣列相當於把變數排成矩陣,通過行號和列號來訪問
定義:型別 陣列名[行數][列數]
int arr[3][5] [0,0][0,1][0,2][0,3][0,4]
[1,0][1,1][1,2][1,3][1,4]
[2,0][2,1][2,2][2,3][2,4]
使用:陣列名[行下標][列下標]
行下標:0~行數-1
列下標:0~列數-1
遍歷:需要與雙層for迴圈結合,外層迴圈負責行遍歷,內層迴圈負責列遍歷
for
(int i =
0; i <
3; i++
)printf
("\n");
}
初始化:型別 陣列名[行數][列數] = ,{},{}}
變長陣列:
定義陣列時使用變數作為陣列的長度,在**編譯期間陣列的長度不確定,當執行到陣列定義語句時,長度才確定下來
一旦陣列長度確定後,不能改變
優點:可以根據實際情況來確定陣列的長度,節約記憶體
缺點:無法初始化
一維陣列和二維陣列的使用
1.一維陣列的建立與初始化 陣列的建立 float arr 5 5個浮點型的陣列 int arr 120 120個整型的陣列 char arr 20 20個字元型的陣列 1 其中的是解引用操作符,它的運算元有兩個 乙個陣列名 乙個索引值。陣列的建立一定要包括型別名,如上面 的 float int c...
一維陣列和二維陣列
一維陣列和二維陣列 一維陣列 在程式中可以使用下標變數,即說明這些變數的整體為陣列,陣列的每個變數的資料型別是相同的。當陣列中每個元素都只帶有乙個下標時,稱這樣的陣列為一維陣列。例 int arr 4 這時,我們分析一下 arr arr 1 arr 2 的資料型別 可以看出arr指的是陣列首元素ar...
二維陣列的定義和使用
和一維陣列類似。我們使用二維陣列,也可以使用動態宣告和靜態宣告兩種方式。動態宣告,例如 int a 宣告陣列 a new int 行 列 陣列例項化,初始化 或者一步到位 int a new int 行 列 包括一維資料,也可以在動態分配時,這樣一步到位。之後我們可以給我們的二維陣列賦值,列印出來看...