C語言陣列總結

2021-09-11 08:29:14 字數 2253 閱讀 9858

陣列

定義:陣列是有序的並且具有相同型別的資料的集合。

一維陣列

1、一般形式:型別說明符 陣列名[常量表示式];例如: int a[10]; 元素為a[0]----a[9].

2、常量表示式中不允許包含變數,可以包含常量或符號常量。

3、陣列元素下標可以是任何整型常量、整型變數或任何整型表示式。

4、可以對陣列元素賦值,陣列元素也可以參與運算,與簡單變數一樣使用。

5、使用數值型陣列時,不可以一次引用整個陣列,只能逐個引用元素。

6、需要整體賦值時只可以在定義的同時整體賦值。如

int a[10]=;正確。

int a[10];a[10]=;錯誤。

7、可以只給一部分元素賦值。例如:

int a[10]=;後面沒有賦值的元素值預設為0。

8、對全部陣列元素賦值時可以不指定陣列長度,例如:

int a[10]=;可以寫成 int a=;

但是,既不賦初值,也不指定長度是錯誤的。例如:int a;錯誤。

二維陣列

1、一般形式:型別說明符 陣列名[常量表示式1][常量表示式2];例如:

int a[3][4];可以看成是包含3個一維陣列,每個一維陣列裡包含4個元素。一共3*4=12個元素。 所有元素為 a[0][0],a[0][1],a[0][2],a[0][3]

a[1][0],a[1][1],a[1][2],a[1][3]

a[2][0],a[2][1],a[2][2],a[2][3]

2、與一維陣列一樣元素下標可以是是任何整型常量、整型變數或任何整型表示式。

3、需要整體賦值時只可以在定義的同時整體賦值。例如:

int a[3][4]=,,};正確。

int a[3][4];a[3][4]=,,};錯誤。

4、可以把所有資料寫在乙個花括號內。例如:

int a[3][4]=;正確。

5、可以只對部分元素賦值。例如:

int a[3][4]=,,};其餘未賦值的元素預設為0。

int a[3][4]=,};可以看成是int a[3][4]=,,};

6、對全部陣列元素賦值時可以省略第一維長度,第二維不可以省略。例如:

a[3][4]=,,};

可以寫成a[4]=,,};

或者a[4]=;

字元陣列

1、定義:char a[10];字元陣列a長度為10。每個元素只能存放乙個字元。例如:

a[0]=『h』;a[1]=『a』;a[2]=『p』;

2、初始化:

char a=;

3、c語言中沒有字串變數,字串的輸入、儲存、處理和輸出等必須通過字元陣列實現。

4、字串的輸入。

scanf();可以用%c逐個字元輸入比如char a[6];for(i=0;i<6;i++) scanf("%c",&a[i]);

可以用%s以字串的形式輸入,比如char a[6];scanf("%s",a);注意,a前不用加&,因為a是陣列名,

已經代表了陣列首位址。

注意:以%s輸入時,以第乙個非空白字元開始,終止於第乙個空白字元。比如:輸入how are you

時。只輸出how.

gets();作用為輸入乙個字串。與scanf();功能一致,但空格和回車都存放在陣列中,最後自動加入『\0』.

不會出現上面輸出不全的情況。

呼叫方式為:gets(陣列名);需要包含標頭檔案「stdio.h」.

5、字串的輸出。

printf();可以使用%c逐個字元輸出,比如:char a[6];for(i=0;i<6;i++) printf("%c",a[i]);

可以用%s以字串的形式輸出,比如char a[6];printf("%s",a);

puts();輸出乙個字串,結尾自動換行。

呼叫形式:puts(字元陣列名或字串常量);需包含標頭檔案「stdio.h」

常用字串處理函式(以下函式需要標頭檔案「string.h」)

1、strlen()作用是測試字串長度。這裡不包括『\0』.使用形式strlen(陣列名或字串常量)

2、strcat()作用是連線兩個字串。呼叫方式strcat(字元陣列1名,字元陣列2名);合併後的字串存放在字

符陣列1中。

3、strcmp()比較兩個字串是否相等。呼叫方式strcmp(字串1,字串2);相等時值為0。1>2時為正數。

1<2時為負數。

4、strcpy()複製字串。呼叫方式strcpy(字元陣列1,字串2);2的內容複製到1中。1只能是字元陣列名。

C語言總結 陣列

c 語言總結 陣列 2019 3 27 1.一維陣列 1.1 一維陣列的定義 int a 10 1.2 一維陣列的初始化 以下 均為定義並初始化乙個長度為5的整數陣列 int a 5 int a 5 a int a 5 a int a 預設a的長度為5 2.二維陣列 2.1 二維陣列的定義 int ...

C語言陣列排序總結

1 冒泡法 冒泡法大家都較熟悉。其原理為從a 0 開始,依次將其和後面的元素比較,若a 0 a i 則交換它們,一直比較到a n 同理對a 1 a 2 a n 1 處理,即完成排序。下面列出其 void bubble int a,int n 定義兩個引數 陣列首位址與陣列大小 冒泡法原理簡單,但其缺...

C 語言陣列自我總結

經過乙個假期後,基本上來說c語言的知識忘的差不多了,今天大概又翻看了下,進行了一點總結吧,也為了日後方便學習。下面我會就常見的兩種定義進行說明,其實也就是運算子的優先順序問題。char line 100 上面的定義表示的是最多有100個元素的一維陣列,陣列中的元素是字串指標型別 char p cha...