一維陣列的定義格式為:
型別說明符
陣列名[常量表示式];例如
:inta[
10];
它表示定義了乙個整形陣列,陣列名為a,有
10個整形元素。 2.
在定義陣列時,
需要指定陣列中元素的個數,方括弧中的常量表示式用來表示元素的個數,即陣列長度。 3.
常量表示式中可以包括常量和符號常量,但不能包含變數。
注意: c
語言不允許對陣列的
大小作動態定義,即陣列的大小不依賴於程式執行過程中變數的值。
陣列說明中其他常見的錯誤: ①
float a[0];
/* 陣列大小為
0沒有意義 */
② int
b(2)(3); [ ]
/* 不能使用圓括號 */
③ int
k, a[k];
/* 不能用變數說明陣列大小*
/
一維陣列:
floatmark[100];
每個資料元素占用的位元組數,就是
基型別的位元組數
,乙個元素佔
4個位元組。
系統會為乙個陣列分配一段
連續的儲存空間。數 組的
首位址就是第0個元素的位址。
1.在定義陣列時對陣列元素賦以初值。 例如
:inta[
10]=;
2. 可以只給一部分元素賦值。例如:
inta[10
]=; 定義
a陣列有
10個元素,但花括弧內只提供
5個初值,這表示只給前面
5個元素賦初值,後
5個元素值為0。
3. 如果想使乙個陣列中全部元素值為
0,可以寫成:
inta[10
]=; 或
inta[10]=;
不能寫成:
inta[10
]=;4. 在對全部陣列元素賦初值時,由於資料的個數已經確定,因此可以不指定陣列長度。
例如 : inta[
5]=;
也可以寫成
inta
[]=;
inta[
10]=;
只初始化前
5個元素,後
5個元素為0。
二維陣列元素的引用是以陣列名開頭然後依次指定陣列的下標來引用乙個元素,引用形式為:陣列名[第一維下標][第二維下標]
例如:a[i][j]引用了二維陣列a的
第i行第j列元素。 4
種方法對二維陣列初始化: 1
.分行給二維陣列賦初值。
例如:
inta[3][4]=
,,
}; 2.
可以將所有資料寫在乙個花括號內,按陣列排列的順序對各元素賦初值。
例如:int
a[3][4]=; 3
.可以對部分元素賦初值。
例如:
inta[3][4]=, , };
也可以對各行中的某一元素賦初值,如
inta[3][4]=, , };
4.如果對全部元素都賦初值,則
定義陣列時對第一維的長度可以不指定,但第二維的長度不能省。
例如:int
a[3][4]=;
等價於:
inta[ ][4]=;
例如:char c[10];
c[0]=′i′ ; c[1]=′ ′; c[2[=′a′; c[3]=′m′;
c[4]=′ ′; c[5]=′h′; c[6]=′a′; c[7]=′p′;
c[8]=′p′; c[9]=′y′;
對字元陣列初始化,可逐個字元賦給陣列中各元素。
例如:char c[10]=
字元陣列的輸入輸出可以有兩種方法:
逐個字元輸入輸出。用格式符「%c」
輸入或輸出乙個字元。
將整個字串一次輸入或輸出。用「%s」
格式符,意思是對字串的輸入輸出。
說明:(1
)用「%s」
格式符輸出字串時,
printf
函式中的輸出項是
字元陣列名,而不是陣列元素名。 (
2)如果陣列長度大於字串實際長度,也只輸出到
遇′\0′結束。 (
3)輸出字元
不包括結束符′\0′。 (
4)如果乙個字元陣列中包含乙個以上′\
0′,則
遇第乙個′\0′時輸出就結束。 (
5)可以用
scanf
函式輸入乙個字串%s。
c語言學習 陣列
我們在程式設計時往往需要儲存很多數,這個時候我們就需要陣列這個工具了 1.陣列的宣告 型別 變數名稱 元素數量 double weight 20 元素數量必須是整數 定義 是一種容器 放東西的東西 特點是 1.其中所有的元素具有相同的資料型別 2.一旦建立,不能改變大小 3.陣列中的元素在記憶體中是...
C語言學習 陣列
代表c語言提高端段筆記哈哈 陣列加強了資料處理能力 即在記憶體中開一段連續的空間 注意從a 0 開始 include int main sum n printf d n sum for n 0 n 第乙個陣列演算法 一般計數器都用0為初值加 號聯動的原因也是因為陣列標號從0開始 陣列是有型別屬性的 ...
C 語言學習 2
程式2 題目 企題目 企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可可提成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於40萬元的部分,可提成3 ...