當前位置:才華齋>計算機>C語言>

C語言陣列知識點

C語言 閱讀(1.26W)

引導語;陣列是計算機程式語言上,對於“Array”的中文稱呼。以下是本站小編分享給大家的C語言陣列知識點,歡迎參考學習!

C語言陣列知識點

【考點1】陣列的定義

陣列是一組具有相同型別的資料的集合,這些資料稱為陣列元素。格式為:型別名 陣列名[常量表達式]。陣列的所佔位元組數為元素個數與基型別所佔位元組數的乘積。

 【考點2】陣列的初始化

第一維長度可以不寫,其它維必須寫。

int a[]={1,2};合法,

int a[][3]={2,3,4};合法,

int a[2][]={2,3,4};非法。

陣列初始化元素值預設為0,沒有初始化元素值為隨機。如在int a[5]={0,1,2};中,元素a[4]值為0;而在int a[5];中,元素a[4]值為一個不確定的隨機數。

【考點3】元素的引用

陣列元素的下標從0開始,到陣列長度減1結束。所以int a[5];中陣列最後一個元素是a[4]。要把陣列元素看作一個整體,可以把a[4]當作一個整型變數。

 【考點4】二維陣列

陣列a[2][3]={1,2,3,4,5,6};中含6個元素,有2行3列。第一行為a[0]行,第2行為a[1]行,a[0]、a[1]叫行首地址,是地址常量。*(a[0]+1)是第一行第一個元素往後跳一列,即元素a[0][1]值為2,*(a[0]+3)是第一行第一個元素往後跳三個,即元素a[1][0]值為4。

 【考點5】行指標

是一個指標變數,佔四個位元組,行指標指向一行連續資料,形式為:int(*p)[2];,p只能存放含有兩個整型元素的一維陣列的首地址。注意(*p)兩邊的小括號不能省略,否則就成了指標陣列,是若干指標元素的集合。

 【考點6】陣列名

陣列名是陣列的首地址。陣列名不能單獨引用,不能通過一個數組名代表全部元素。陣列名是地址常量,不能對陣列名賦值,所以a++是錯誤的。但陣列名可以作為地址與一個整數相加得到一個新地址。

 【考點7】元素形式的轉換

助記:“脫衣服法則”a[2]變成*(a+2),a[2][3]變成*(a+2)[3]再可變成*(*(a+2)+3)。這個思想很重要!

二維陣列做題目的技巧:

如果有 a[3][3]={1,2,3,4,5,6,7,8,9}這樣的.題目。

步驟一:把他們寫成: 第一列 第二列 第三列

a[0]􀃆 1 2 3 ->第一行

a[1]􀃆 4 5 6 —>第二行

a[2]􀃆 7 8 9 ->第三行

步驟二:這樣作題目間很簡單:

*(a[0]+1)我們就知道是第一行的第一個元素往後面跳一列,那麼這裡就是a[0][1]元素,

所以是1。

*(a[1]+2)我們就知道是第二行的第一個元素往後面跳二列。那麼這裡就是a[1][2]元素,

所以是 6。

一定記住:只要是二維陣列的題目,一定是寫成如上的格式,再去做題目,這樣會比較簡單。

兩種重要的陣列長度:

char a[]={‘a’,’b’,’c’}; 陣列長度為3,字串長度不定。sizeof(a)為3。

char a[5]={ ‘a’,’b’,’c’} 陣列長度為5,字串長度3。sizeof(a)為5。