C語言 陣列

2021-07-26 04:14:26 字數 1718 閱讀 2778

陣列的定義和使用

一維陣列的定義方式:

在c語言中使用陣列必須先進行定義。

型別說明符 陣列名 [常量表示式];

例如: int a [10];   表示定義了乙個整形陣列,陣列名為a,此陣列有十個元素,十個元素都是整型變數。十個元素的標號為a[0]~a[9]。

注意:

1、陣列大小為0沒有意義;

2、不能使用圓括號;

3、不能用變數說明陣列大小; int k,a[k];

陣列元素的一般形式為:

陣列名 [下標] ;

下標可以是整形長量或整形表示式。

例如:a[0]=a[5]+a[7]-a[2*3]        (a[2*3]=a[6])

a[i+j]

a[i++]

都是合法的陣列元素。

注意:

在c語言中只能逐個地使用下標變數,而不能一次引用整個陣列。

例如:輸出有10個元素的陣列必須使用迴圈語句逐個輸出各下標變數:

for(i=0;i<10;i++)

一維陣列的初始化:

賦值語句賦值:

for(i=0;i<=9;i++)

初始化賦值:

初始化賦值是指在陣列定義時給陣列元素賦予初值。陣列初始化時在編譯階段進行的。

一般形式為:

型別說明符 陣列名[常量表示式]+;

可以只給一部分元素賦值:

int a [10]=;

這只表示給前面5個元素賦初值,後5個元素值為0。

如果想使乙個陣列中全部元素值為0,可以寫成:

int a[10]=;

或int a[10]=;

動態賦值:

就是讓使用者自己賦值,例如:

#includeint main()

max=a[0];

for(i=1;i<10;i++)

printf("maxnum=%d\n",max);

}

二維陣列的定義:

二維陣列定義的一般形式為:

型別說明符 陣列名 [常量表示式] [常量表示式];

例如:定義a為3行4列的陣列,b為5行8列的陣列。

float a [3][4],b[5][8];

可以想象成乙個矩陣。

二維陣列的初始化:

直接分行給二維陣列賦值。如:

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

可以將所有資料寫在乙個花括號內,按陣列排列的順序對各元素賦值。如:

int a [3][4]=;

可以對部分元素賦值。如:

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

如果對全部元素都賦值,則定義陣列時2對第一維的長度可以不指定,但第二維的長度不能省。如:

int a [3][4]=;

它等價於:

int a [ ][4]=;

在定義時也可以只對部分元素賦初值而省略第一維的唱的,但應分行賦初值。如:

int a [ ] [4]=,{},};   

c語言陣列

陣列 構造資料型別之一 陣列是具有一定順序關係的若干個變數的集合,組成陣列的各個變數稱為陣列的元素。陣列中各元素的資料型別要求相同,用陣列名和下標確定。陣列可以是一維的,也可以是多維的。在科學計算中,許多重要的應用都是基於陣列的。所謂一維陣列是指只有乙個下標的陣列。它在計算機的記憶體中是連續儲存的。...

C語言陣列

在變數作函式引數時,所進行的值傳送是單向的。即只能從實參傳向形參,不能從形參傳回實參。形參的初值和實參相同,而形參的值發生改變後,實參並不變化,兩者的終值是不同的。而當用陣列名作函式引數時,情況則不同。由於實際上形參和實參為同一陣列,因此當形引數組發生變化時,實參陣列也隨之變化。當然這種情況不能理解...

C語言 陣列

陣列 void test1 for int i 0 i 5 i for int i 0 i 5 i 陣列資料倒序存放 void test2 printf 請輸入5個學生的成績 n for int i 4 i 0 i printf 輸出5個學生的成績 n for int i 0 i 5 i 將陣列的長...