5.3 二維陣列
概念:陣列就是乙個集合,裡面存放了相同型別的資料元素
特點:(1)陣列中每個資料元素都是相同的資料型別。
(2)陣列是由連續的記憶體位置組成的。
(3)可以通過下標訪問陣列中的元素
(1)資料型別 陣列名[陣列長度];
(2)資料型別 陣列名[陣列長度]=;如果給定的值的數量小於陣列長度,那麼使用0進行補充
(3)資料型別 陣列名[ ]=
#include
using
namespace std;
intmain()
int arr2[4]
=;cout << arr2[2]
<< endl;
//定義方式3:資料型別 陣列名=
int arr3=
; cout << arr3[4]
<< endl;
}
陣列名作用:
(1)統計整個陣列在記憶體中的長度:sizeof(陣列名)
#include
using
namespace std;
intmain()
; cout <<
"整個陣列占用記憶體空間大小為:"
<<
sizeof
(arr1)
<< endl;
cout <<
"陣列每個元素占用記憶體空間大小為:"
<<
sizeof
(arr1[0]
)<< endl;
cout <<
"陣列中元素個數為:"
<<
sizeof
(arr1)
/sizeof
(arr1[0]
)<< endl;
int arr3=
; cout <<
<<
&arr3[2]
<< endl;
}
一維陣列案例1:
#include
using
namespace std;
intmain()
;//2.找到最終的小豬
int max =0;
int num =0;
for(
int i =
0; i <
sizeof
(arr1)
/sizeof
(arr1[0]
); i++)}
//3.列印最重的小豬
cout <<
"最重的小豬為:"
<"它體重為:"
<}
一維陣列案例2:
#include
using
namespace std;
intmain()
;//2.陣列元素逆置
int temp =0;
int j =
sizeof
(arr1)
/sizeof
(arr1[0]
)-1;
for(
int i =
0; i <
sizeof
(arr1)
/sizeof
(arr1[0]
); i++
) j--;}
//3.列印逆置的陣列
for(
int i =
0; i <
sizeof
(arr1)
/sizeof
(arr1[0]
); i++
)}
#include
using
namespace std;
intmain()
;//2.陣列氣泡排序
int end =
sizeof
(arr1)
/sizeof
(arr1[0]
)-1;
//結束位置的下標
for(
int i =
0; i <
sizeof
(arr1)
/sizeof
(arr1[0]
); i++)}
end--;}
//3.列印排序後的陣列
for(
int i =
0; i <
sizeof
(arr1)
/sizeof
(arr1[0]
); i++
)}
二維陣列就是在一維陣列上,多加乙個維度。
(1)資料型別 陣列名[行數] [列數];
(2)陣列型別 陣列名 [行數][列數]=,}
(3)陣列型別 陣列名 [行數][列數]=
(4)資料型別 陣列名[列數]=
#include
using
namespace std;
intmain()
}//建立方式2:陣列型別 陣列名 [行數][列數]=,}
int arr2[2]
[4]=
,};for
(int i =
0; i <
2; i++)}
//建立方式3:陣列型別 陣列名 [行數][列數]=
int arr3[2]
[4]=
;for
(int i =
0; i <
2; i++)}
//建立方式4:陣列型別 陣列名 [列數]=
int arr4[
4]=;
for(
int i =
0; i <
2; i++)}
}
陣列名作用:
(1)檢視二維陣列所佔記憶體空間
#include
using
namespace std;
intmain()
,}; cout <<
"二維陣列所佔記憶體空間大小為:"
<<
sizeof
(arr2)
<< endl;
cout <<
"二維陣列第一行占用的記憶體為:"
<<
sizeof
(arr2[0]
)<< endl;
cout <<
"二維陣列第乙個元素占用的記憶體為:"
<<
sizeof
(arr2[0]
[0])
<< endl;
cout <<
"二維陣列的行數:"
<<
sizeof
(arr2)
/sizeof
(arr2[0]
)<< endl;
cout <<
"二維陣列的列數:"
<<
sizeof
(arr2[0]
)/sizeof
(arr2[0]
[0])
;//2.二維陣列首位址
cout <<
<< arr2 << endl;
cout <<
<< arr2[0]
<< endl;
cout <<
<<
&arr2[0]
[1]<< endl;
}
陣列案例:語文
數學英語
張三100
100100
李四100
9050
王五60
7080
#include
using
namespace std;
intmain()
,,};
//2.分別計算三名同學的總成績
for(
int i =
0; i <
sizeof
(arr2)
/sizeof
(arr2[0]
); i++
) cout <<
"第"<< i <<
"個同學的總分為:"
<< sum << endl;
}}
高質量C程式設計05 陣列
傳送門 高質量c程式設計教程彙總 陣列名代表陣列的首位址,是不可修改的常量位址 若定義a 4 5 含義 a 2第2行的位址 a 2 第2行第0列元素的位址 a 2 第2行第0列元素 陣列的大小 動態分配的除外 是在編譯的時候就確定下來的 當陣列作為函式引數時,自動退化為指標 1 使用隨機數初始化 陣...
swift基礎 05陣列
let arr zhangsan lisi print arr 遍歷每乙個元素 for a in arr 像 oc 一樣列印 print arr as nsarray 陣列中儲存的都是字串 let arr zhangsan lisi 陣列中儲存的是 nsobject let arr1 zhangsa...
C 程式設計基礎(5) 陣列
所謂陣列,就是乙個集合,裡面存放了相同型別的資料元素 特點1 陣列中的每個資料元素都是相同的資料型別 特點2 陣列是由連續的記憶體位置組成的 5.2.1 一維陣列定義方式 一維陣列定義的三種方式 資料型別 陣列名 陣列長度 資料型別 陣列名 陣列長度 資料型別 陣列名 示例int main 如果 內...