ARRAY
老師你錯了 是從0開始不是1 --陣列
CONTENTS
- 一維陣列 arr[ ]
- 二維陣列 arr[ ][ ]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
一維陣列
declare an array
- 資料型態 變數名稱[儲存空間];
int a[10];
// 資料型態: 整數(陣列), 陣列名稱: a, 陣列大小: 10
// 沒有初始化的陣列(壞寶寶)
// 裡面也許長這樣 a = {-2147483648, 2147483657, ...}
double b[100] = {0.1, 0.1, 0.2};
// 資料型態: 浮點數(陣列), 陣列名稱: b, 陣列大小: 3
// 陣列值用大括號括
//除了初始化的3個數其他預設為0
char str[6] = {0};
// 資料型態: 字元(陣列), 陣列名稱: str, 陣列大小: 6
// 字元陣列會包含最後一個字元'\0', 因此開的大小要字數+1
// 但建議還是開大一點, 不開白不開, 你也不會少一塊肉
// 初始化為0(乖寶寶)
// 裡面長這樣: str = {0 ,0 ,0 ,0 ,0 ,0}
存取陣列
- 迴圈
int a[6];
for(int i=0;i<=4;i++) a[i]=i;
a[0] | a[1] | a[2] | a[3] | a[4] | a[5] |
---|---|---|---|---|---|
1
0
5
4
3
2
注意
- 不要存取不在陣列空間內的值
- 如果打成下面那樣的話OJ會出現RE
- 電腦會當機
int a[10];
cout<<a[100]<<endl;
cout<<a[1000]<<endl;
注意
- 陣列的長度在宣告後就固定不變了
- 那有些人會想說要打成這樣
- 不建議
int n;
int a[n];
多維陣列
declare an array
- 資料型態 變數名稱[儲存空間][儲存空間][][][]....
- 幾維就開幾格
int a[2][2];
double a[2][2];
存取陣列
- 巢狀迴圈
int a[3][3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++) a[i][j]=i+j;
}
0 | 1 | 2 | |
---|---|---|---|
0 | |||
1 | |||
2 |
0
4
3
3
2
2
1
2
1
ARRAY
老師你錯了 是從0開始不是1 --陣列
CONTENTS
- 一維陣列 arr[ ]
- 二維陣列 arr[ ][ ]
Why we need array?
如果我們有10筆資料
int a,b,c,d,e,f,g,h,i,j;
如果我們有100筆資料
int a,b,c,d,e,f;
int g,h,i,j,k,l,m,n,o,p,q,r,s,t,f...........
for(int i=0;i<100;i++){
int a;
}
陣列
By jumping945
陣列
- 143