C語言陣列知識點
引導語;陣列是計算機程式設計語言上,對於“Array”的中文稱呼。以下是本站小編分享給大家的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。
-
C語言main函式的引數
導語:main函式一般都是不帶引數的,那麼什麼情況會帶引數呢?讓我們瞭解一下吧!一般main函式都是不帶引數的。因此main後的括號都是空括號。實際上,main函式可以帶引數,這個引數可以認為是main函式的形式引數。C語言規定main函式的引數只能有兩個,習慣上這兩個引數寫...
-
C語言學習攻略
導語:C語言作為最流行的程式設計語言,是任何一個計算機專業及其愛好者們都必須掌握的一門程式語言。下面就由小編為大家介紹一下C語言學習攻略,歡迎大家閱讀!一、C語言學習中存在的問題(一)基礎薄弱,無法適應C語言學習的課程通常安排在大一,這個時候,學生們剛剛進入...
-
C語言自學入門技巧
學習C語言不是一朝一夕的事情,但也不需要花費很長的時間才能精通。下面小編就為大家介紹一下C語言自學入門技巧吧!C語言自學入門技巧11、程語語言其實是一個很初級的工具,但是又必須熟練的掌握它,學懂一門程式語言就好像學會了寫字,但是會寫字的人不見得會寫文章,而...
-
c語言中多個if的用法
c語言中多個if的用法的用法你知道嗎?下面小編就跟你們詳細介紹下c語言中多個if的用法的用法,希望對你們有用。c語言中多個if的用法的用法如下:用if語句可以構成分支結構。它根據給定的條件進行判斷,以決定執行某個分支程式段。C語言的if語句有三種基本形式。語句的...