一維陣列 Array
- 是由一組相同型態的變數集合而成的
什麼是陣列?
int a[6] = {1,1,2,3,5,8} ;

例如:儲存100位學生的成績!
為什麼要用陣列?
int a1, a2, a3, a4 ......
cin >> a1 >> a2 >> a3 >> a4 ......int a[100]={99,98,91,85 ...... };用變數儲存:
用陣列儲存:
宣告太多變數很麻煩
陣列宣告
int score[6];資料型態 陣列名稱[陣列大小];
or
int n=6;
int score[n];索引值
- 從0開始
int a [6] = {10,11,12,13,14,15} ;
| 索引值 | 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|---|
| a[0] | a[1] | a[2] | a[3] | a[4] | a[5] |
元素值: 10 11 12 13 14 15
陣列初始化
宣告陣列之後,裡頭的元素值是不可預知的資料
| 31562 | 0 | -2088374528 |
|---|
a
int a[3];
cout<<a[0]<<" "<<a[1]<<" "<<a[3];
//輸出: 31562 0 -2088374528陣列初始化
- 沒有初始化不會編譯錯誤,但可能會得到錯誤的結果
- 宣告陣列時就直接初始化,可以避免錯誤
//給予部分元素初始值,未設定初始值的元素會被設為0
int a[3]={5}; //等同 int a[3]={5,0,0}
//所有元素會被設為0
int a[3]={}; //等同 int a[3]={0,0,0}
陣列輸入輸出
用迴圈輸入輸出
int a[3];
//輸入 1,3,5
for(int i=0 ;i<3 ;i++){
cin>>a[i];
}
//輸出 1,3,5
for(int i=0 ;i<3 ;i++){
cout<<a[i]<<' ';
}
陣列輸入輸出
用迴圈輸入輸出
int a[3];
//輸入 1,3,5
for(int i=0 ;i<3 ;i++){
cin>>a[i];
}
cout << a[0] << a[1] << a[3] ......實作
楓資辦了一場看誰上課睡覺睡最久的比賽,請找出睡最久的人睡了幾分鐘
輸入:
輸入有兩行。第一行有一個正整數 n 代表參賽人數。第二行有 n 個正整數,代表他們分別睡了多久。
輸出:
睡最久的人睡了幾分鐘
實作
#include <iostream>
using namespace std;
int main()
{
int n, max=0;
cin>>n;
int time[n]={0};
for(int i=0;i<n;i++){
cin>>time[i];
if(time[i]>max)
max=time[i];
}
cout<<max<<endl;
return 0;
}
Serif
By amiao
Serif
- 193