C語言之陣列

2022-08-24 13:57:11 字數 1632 閱讀 7137

陣列就是在記憶體空間中,開闢乙個大的空間,然後再將這個大的空間均的分為若干份的小空間,每個小空間用來儲存乙個資料.

長度:指的能存放資料的個數

下標/索引:每乙個資料所在小空間的編號

元素:每個小空間裡面實際存放的資料

型別 陣列名[要儲存的資料的個數];

例: int scores [5];               //代表乙個儲存了五個int型別資料的陣列,陣列名為scores;

char chs [5];               //代表乙個儲存了五個char型別資料的陣列,陣列名為chs;

float fs [5];                   //代表乙個儲存了五個float型別資料的陣列,陣列名為fs;

a.對宣告完成的陣列進行逐一賦值

陣列名 [下標] = 資料;

例:int scores[5];

scores[0] = 100;                  //為下標為0的元素賦值為100

scores[1] = 1;

scores[4] = 100;

注:陣列的下標總是從0開始,下標最大的數為陣列的長度減1;

b.在陣列宣告的時候就初始化

語法1.

型別 陣列名[長度] = ;

注:長度有多少個,資料就寫多少個

例: int scores [5] = ; // 資料會從0開始依次賦值

2.型別 陣列名 = ;

注:編譯器會自動根據右邊花括號中得資料個數確定你陣列的長度

例: int scores = ; // 長度為5

char chs = ; //長度為3

3.型別 陣列名[5] = ;//資料不足5個

例: int scores = ; // 這樣賦值,只有下標0和1有值,分別是90和93,其他元素沒有值,系統會為這些沒有沒有值的元素初始化為0

注:部分初始化的話,其他沒有賦值的元素會被初始化為0

4.型別 陣列名[5] = ;            //這種是人為的指定給下標為幾的元素賦值

例: int scores [5] = ;

注:很少這樣用

語法:        陣列名 [下標];

例:   nums [0]; //取的下標為0的元素    也是就是陣列種第乙個資料           

nums [3]; //取的下標為3的元素   也就是陣列中第四個資料

就是代表迴圈這個陣列依次的訪問每個元素

例:int scores [5] =

for(int i = 0;i < 5; i++)

scores[10] = 200;               //越界了

陣列占用的總位元組數 / 每乙個元素占用的位元組數 = 小空間的個數(陣列的個數)    

sizeof(陣列名)  /  sizeof(陣列型別)  

注:sizeof不是函式,是運算子   

宣告陣列的時候是必須寫長度的,但是把陣列作為函式的引數時,定義形參的時候,可以不寫長度,代表所有長度同型別的陣列都可以傳過去.

注:在c語言中,除了陣列以外,都是值傳遞,而陣列的傳遞是引用的傳遞,所以形參的值發生變化,實參的值也會發生改變;但是陣列的元素就是乙個普通的變數,所以如果是陣列的元素作為函式的引數時,同樣是值傳遞;

C語言之陣列

c語言之陣列 一,一維陣列 1,一維陣列的定義 型別符 陣列名 常量表示式 注 1 常量表示式中可以包括常量和符號常量.int a 3 5 是合法的,int a n 是不合法的,c語言不允許對陣列的大小作動態定義 2 如果在被呼叫的函式 不包括主函式 中定義陣列,起長度可以是變數或非常量表示式,可稱...

C語言之陣列

c語言陣列 一 陣列的概念 用來儲存一組資料的構造資料型別 特點 只能存放一種型別的資料,如全部是int型或者全部是char型,陣列裡的資料成為元素。二 陣列的定義 格式 型別 陣列名 元素個數 舉例 儲存5個人的年齡 int agrs 5 在記憶體中開闢4x5 20個位元組的儲存空間 可以在定義陣...

C語言之陣列

一 一維陣列 1.1 一維陣列的定義 1.一維陣列是指數組中的每個元素只帶有乙個下標的陣列。定義方式為 型別說明符 陣列名 常量表示式 1.2 一維陣列元素的引用 1.陣列元素的引用形式為 陣列名 下標表示式 2.乙個陣列元素實質上市乙個變數名,代表記憶體中的乙個儲存單元,乙個陣列佔據的是一連串連續...