引導語;數組是一組同類型的數,以下是本站小編分享給大家的C語言數組知識點,歡迎參考學習!
一、數組的聲明
聲明數組的語法爲在數組名後加上用方括號括起來的維數說明。本接僅介紹一維數組。下面是一個整型數組的例子:
int array[10];
這條語句定義了一個具有10個整型元素的名爲array的數組。這些整數在內存中是連續存儲的。數組的大小等於每個元素的大小乘上數組元素的個數。方括號中的維數表達式可以包含運算符,但其計算結果必須是一個長整型值。這個數組是一維的。
下面這些聲明是合法的:
int offset[5+3];
float count[5*2+3];
下面是不合法的:
int n=10;
int offset[n]; /*在聲明時,變量不能作爲數組的維數*/
二、用下標訪問數組元素
int offset[10];
表明該數組是一維數組,裏面有10個數,它們分別爲offset[0],offset[1],……offset[9];千萬注意,數組的第一個元素下標從0開始。一些剛學編程的人員經常在這兒犯一些錯誤。
offset[3]=25;
上面的例子是把25賦值給整型數組offset的第四個元素。
在賦值的時候,可以使用變量作爲數組下標。
main()
{
int i,offset[10];
for(i=0;i<10;i++) scanf(%d,&offset[i]);
for(i=9;i>=0;i--) printf(%d ,offset[i]);
printf(n);
}
題目的意思是先輸入10個整數,存入到數組中,然後反序輸出。
三、數組的初始化
前面說了,變量可以在定義的時候初始化,數組也可以。
int array[5]={1,2,3,4,5};
在定義數組時,可以用放在一對大括號中的初始化表對其進行初始化。初始化值的個數可以和數組元素個數一樣多。
如果初始化的個數多於元素個數,將產生編譯錯誤;如果少於元素個數,其餘的元素被初始化爲0。
如果維數表達式爲空時,那麼將用初始化值的個數來隱式地指定數組元素的個數,如下所式:
int array[]={1,2,3,4,5};
這也表明數組array元素個數爲5。
main()
{
int i,array[]={1,3,5,7,9,11};
for(i=0;i<5;i++) printf(%d ,array[i]);
printf(n);
}
最終結果爲1 3 5 7 9
四、字符數組
整數和浮點數數組很好理解,在一維數組中,還有一類字符型數組。
char array[5]={'H','E','L','L','O'};
對於單個字符,必須要用單引號括起來。又由於字符和整型是等價的,所以上面的字符型數組也可以這樣表示:
char array[5]={72,69,76,76,79}; /*用對應的ASCII碼*/
舉一個例子:
main()
{
int i;
char array[5]={'H','E','L','L','O'};
for(i=0;i<5;i++) printf(%d ,array[i]);
printf(n);
}
最終的輸出結果爲72 69 76 76 79
但是字符型數組和整型數組也有不同的地方,看下面的:
char array[]=HELLO;
如果我們能看到內部的話,實際上編譯器是這樣處理的':
char array[]={'H','E','L','L','O','