選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C 多維陣列


多維陣列

在上一章中,您學習了 陣列,也被稱為一維陣列。這些陣列非常有用,並且在 C 程式設計中會經常用到。但是,如果您想以表格形式儲存資料,例如帶有行和列的表,那麼您需要熟悉多維陣列

多維陣列本質上是陣列的陣列。

陣列可以有任意數量的維度。在本章中,我們將介紹最常見的——二維陣列(2D)。


二維陣列

二維陣列也稱為矩陣(行和列的表格)。

要建立一個二維整數陣列,請看以下示例:

int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };

第一個維度代表行數 [2],第二個維度代表列數 [3]。這些值按行順序排列,並可視化如下:


訪問二維陣列的元素

要訪問二維陣列的元素,您必須指定行和列的索引號。

此語句訪問 matrix 陣列的第一行 (0)第三列 (2) 中的元素值。

示例

int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };

printf("%d", matrix[0][2]); // 輸出 2
自己動手試一試 »

請記住: 陣列索引從 0 開始:[0] 是第一個元素,[1] 是第二個元素,以此類推。



更改二維陣列的元素

要更改元素的值,請引用每個維度中元素的索引號。

以下示例將更改第一行 (0)第一列 (0) 的元素值:

示例

int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };
matrix[0][0] = 9;

printf("%d", matrix[0][0]); // 現在輸出 9 而不是 1
自己動手試一試 »

遍歷二維陣列

要遍歷多維陣列,您需要為陣列的每個維度設定一個迴圈。

以下示例輸出 matrix 陣列中的所有元素:

示例

int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };

int i, j;
for (i = 0; i < 2; i++) {
  for (j = 0; j < 3; j++) {
    printf("%d\n", matrix[i][j]);
  }
}
自己動手試一試 »


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援