如何定義和引用C 的多維數(shù)組?
一、一維數(shù)組的定義和引用數(shù)組是一組類型相同的有序變量的集合,其名稱有序、存儲空間也有序。一個數(shù)組元素代表內存中的一個存儲單元,而一個數(shù)組的全部元素占據(jù)一串連續(xù)的存儲單元。數(shù)組在內存中存儲的地址一經定義
一、一維數(shù)組的定義和引用
數(shù)組是一組類型相同的有序變量的集合,其名稱有序、存儲空間也有序。一個數(shù)組元素代表內存中的一個存儲單元,而一個數(shù)組的全部元素占據(jù)一串連續(xù)的存儲單元。數(shù)組在內存中存儲的地址一經定義,即成為常量,不可更改。因此,數(shù)組是構造類型的數(shù)據(jù),即由基本類型數(shù)據(jù)構造而成的新類型。
例如,在C 中,我們可以通過以下代碼定義一個包含10個整數(shù)的一維數(shù)組:
```
int a[10];
```
這個數(shù)組的名稱是“a”,它包含了10個整數(shù)類型的元素,每個元素可以通過下標訪問。例如,要訪問第3個元素,我們可以使用以下語句:
```
a[2] 5;
```
二、二維數(shù)組的定義和引用
如果我們需要存儲一個二維表格或矩陣,可以使用二維數(shù)組。二維數(shù)組是一種特殊的一維數(shù)組,其中每個元素都是一個一維數(shù)組。例如,我們可以使用以下代碼定義一個包含3行4列整數(shù)的二維數(shù)組:
```
int b[3][4];
```
在這個數(shù)組中,每個元素都是一個4個整數(shù)類型元素的一維數(shù)組。我們可以通過兩個下標來訪問二維數(shù)組的元素。例如,要訪問第2行第3列的元素,可以使用以下語句:
```
b[1][2] 7;
```
三、多維數(shù)組的定義和引用
除了一維和二維數(shù)組,C 還支持多維數(shù)組。多維數(shù)組的定義也類似于二維數(shù)組,只需要在方括號中添加更多的維度即可。例如,我們可以使用以下代碼定義一個包含3個3行4列的三維數(shù)組:
```
int c[3][3][4];
```
在這個數(shù)組中,每個元素都是一個3行4列的二維數(shù)組。我們需要使用三個下標來訪問三維數(shù)組的元素。例如,要訪問第2個三維數(shù)組中第1行第2列的元素,可以使用以下語句:
```
c[1][0][1] 9;
```
四、總結
通過以上介紹,我們了解了C 中多維數(shù)組的定義和引用方法。無論是一維、二維還是多維數(shù)組,都是C 程序中常見的數(shù)據(jù)類型,需要掌握它們的定義和使用方法。
五、示例代碼
以下是一個使用選擇排序法對10個數(shù)按升序排序的示例代碼,其中使用一維數(shù)組存儲原始數(shù)據(jù)并輸出原序號,以及輸出排序后的結果。
```c
include
using namespace std;
int main()
{
int a[10], i, j, t;
for (i 0; i < 10; i )
{
cin >> a[i]; // 輸入原始數(shù)據(jù)
}
for (i 0; i < 9; i ) // 外循環(huán)
{
for (j i 1; j < 10; j ) // 內循環(huán)
{
if (a[i] > a[j])
{
t a[i];
a[i] a[j];
a[j] t; // 交換數(shù)據(jù)
}
}
}
for (i 0; i < 10; i )
{
cout << i << " " << a[i] << endl;
}
return 0;
}
```