在c語言中,需要指代乙個東西時,我們可以使用變數。當需要指代多個東西時,我們就需要用到陣列。
陣列可以儲存乙個固定大小的相同型別元素的順序集合。
陣列的宣告並不是宣告乙個個單獨的變數,比如number0、number1… …number9,而是宣告乙個陣列變數,比如numbers,然後使用形如numbers[1]的形式來表示每乙個單獨的變數。陣列中的特定元素可以通過索引訪問。
所有的陣列都是由連續的記憶體位置組成。最低的位址對應第乙個元素,最高的位址對應最後乙個元素。第乙個元素索引為0。
c語言中要宣告乙個陣列,需要指定元素的型別和元素的數量,如下所示:
type arrayname [ array_size]
這樣叫做一維陣列,type 為陣列中存放內容的資料型別,和變數的資料型別一致,arrayname為陣列名,arraysize是乙個大於零的整數常量。
舉例:
int length[3]
;//宣告乙個表示長度的陣列
陣列中包含三個元素,都是int型別,若我們需要使用其中的元素時,可以通過length[0]、length[1]、length[2]的方式進行呼叫。
c語言中,陣列可以逐個初始化,也可以使用如下的初始化語句;
double length[5]
=;
注意:當初始化陣列有長度時,花括號內數字個數不可以超過長度,否則會發生越界產生錯誤
陣列宣告時也可以省略掉陣列大小,此時大小為初始化時元素的個數。
舉例:
double length=
;//陣列大小為5
length[2]
=2.36
;//為陣列中單個元素賦值
陣列元素可以通過陣列名稱加索引進行訪問。元素的索引是放在括號內,跟在陣列名稱的後邊。
double max = length[4]
;將陣列中第五個元素賦值給max
c語言支援多維陣列,其宣告一般形式如下:
type name[size1] [size2]…[sizen]
1、二維陣列
1).二維陣列宣告
二維陣列是最簡單的多維陣列,也是最常使用的多維陣列,二維陣列本質上是乙個一維陣列的列表,也就是表示多個一維陣列。
舉例:
int a[2]
[3];
//可以看作是乙個兩行三列的**
a[0][0]
a[0][1]
a[0][2]
a[1][0]
a[1][1]
a[1][2]
2).二維陣列初始化
多維陣列可以通過在括號內為每行指定值來進行初始化。
舉例:
int a[2]
[3]=
,//初始化索引為0的行
,//初始化索引為1的行
//初始化索引為2的行
};
初始化時也可以不用內部巢狀:
int a[2]
[3]=
;//與上乙個初始化等價
3).二維陣列元素訪問
二維陣列的元素是通過下標(即行索引和列索引)進行訪問。
舉例:
int a = a[1]
[1];
//將陣列中的第二行第二列個元素賦值給a
C語言 陣列學習筆記
1 陣列 a 陣列的定義 型別名 陣列名 元素的個數 元素的個數必須為常量 例如 float arr1 5 陣列元素的型別是float 陣列的型別是 float 5 叫做長度為5的浮點型陣列 b 陣列的初始化 只有在第一次定義的時候才能用 一次性給元素初始化 全部初始化 例如 int arr 5 全...
C語言陣列學習筆記
陣列是一種容器,陣列中的元素在記憶體中連續依次排列的,其中所有元素具有相同的資料型別。一旦被建立,不能改變大小。陣列的每個單元就是陣列型別的乙個變數。陣列本身不能被賦值,賦值的是陣列的元素。變數名稱加中括號 int number 10 整合初始化 int number int number int ...
C語言學習筆記《陣列》
1,已知陣列x有5個元素,精組y有6個元素.請分別對x和y排序。輸出x和y排序後的元素 include main y 6 int i,j,sum 0 for i 0 i 4 i int i,j,sum for i 0 i 9 i for i 0 i 9 i printf d t a i code c...