其實二維陣列其實就是每乙個元素為一維陣列的陣列。
二維陣列格式1
資料型別[
] 變數名 =
new 資料型別[m]
[n];
m表示這個二維陣列有多少個一維陣列 必須寫上
n表示每乙個一維陣列的元素個數 可選
舉例:
int
arr=
newint[3
][2]
;
定義了乙個二維陣列arr,這個二維陣列有3個一維陣列,名稱為arr[0],arr[1],arr[2]。每個一維陣列有2個元素,可以通過arr[m][n]來獲取表示獲取第m+1個一維陣列的第n+1個元素
注意:下面定義的區別
int x,y;
int[
] x,y;
//定義了兩個陣列 乙個是一維陣列x 乙個是二維陣列y
二維陣列格式2
資料型別[
] 變數名 =
new 資料型別[m]
;
m表示這個二維陣列有多少個一維陣列
這一次沒有直接給出一維陣列的元素個數,可以動態的給出。
舉例:
int
格式一是定義了乙個長度為2的二維陣列,並且為它的每個元素(一位陣列)進行了初始化(預設為0);格式二是只定義了乙個長度為2的二維陣列(每個元素預設值為null)二維陣列格式3
資料型別[
] 變數名 =
new 資料型別[
],,.
..};
簡化版:
資料型別[
] 變數名 =,,
};
這個格式屬於靜態初始化:由我們指定具體的元素值,由系統給分配長度
舉例:
int
arr =,,
};int[
] arr =,,
};
public
static
void
main
(string[
] args),,
};for(
int i=
0;i}
public
static
void
main
(string[
] args),,
};int sum=0;
for(
int i=
0;isystem.out.
println
(sum)
;}
public
static
void
main
(string[
] args)
//收尾列賦值為1
for(
int i=
2;i//從第三行,第二列開始每個元素等於上一行本列加前一列
for(
int i=
0;i) system.out.
println()
;//遍歷出三角形
基本資料型別形參的改變不影響實參,引用型別形參的改變會影響到實參。
a:遞迴概述: 方法定義中呼叫方法本身的現象
b:遞迴注意事項
要有出口,否則就是死遞迴
次數不能太多,否則就記憶體溢位
以5!為例:
案例演示: 需求:兔子問題(斐波那契數列)
有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問第二十個月的兔子對數為多少?
由此可見兔子物件的資料是:1 , 1 , 2 , 3 , 5 , 8 …
public
static
void
main
(string[
] args)
private
static
intgetnum
(int month)
else
return num;
}
二維陣列與二維指標
1.二維陣列的儲存是線性的,可以通過一維指標的方式訪問。如一下 int map 5 5 int mapd map 0 0 則 map i j mapd i 5 j 而利用二維陣列線性儲存的特性,可以將二維陣列當作一維指標方便的在函式之間傳遞 如 將乙個二維陣列賦值給乙個動態二維陣列,引數設定為一維指...
二維陣列與二維指標
一.指標與二維陣列 以martix 3 4 為例 1.二維陣列的本質 int martix 3 4 int martix 3 4 int 4 martix 3 令int 4 為type,type martix 3 為含有三個元素的陣列,每乙個元素型別為int 4 int 4 是乙個擁有4個int型別...
一維陣列與二維陣列
1.一維陣列的定義格式為 型別說明符 陣列名 常量表示式 在定義陣列時,需要指定陣列中元素的個數,方括弧中的常量表示式用來表示元素的個數,即陣列長度。常量表示式中可以包括常量和符號常量,但不能包含變數。c語言不允許對陣列的大小作動態定義,即陣列的大小不依賴於程式執行過程中變數的值。在定義陣列時對陣列...