陣列
陣列:使用同一個變數儲存一組相同型態的資料,然後以相同的名稱,但不同的註標存取中個別的資料。
宣告二維陣列
int a[3] [5]; //宣告二維長整數陣列
計算個人成績總和練習:
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char** argv)
{
int a[2] [3] ={{87,87,87},
{92,95,98}};
int sum[2] = {0, 0};
cout << "座號\t chinese \t English\t math\t 總分\n";
cout << "----\t ---- \t ----\t ----\t ----\n";
for(int q=0; q<2; q++)
{
cout << " a" << i << '\t';
for(int c=0; c<2; c++)
{
cout <<setw(3) << a[q][c] << '\t';
sum[q] += a[q][c];
}
cout << setw(4) << sum[q] << endl;
}
system("PAUSE");
return 0;
}
輸出結果:
起始二維陣列
long array1[2][4] = {0}; //所有元素起始值為0
下面範例是宣告一個2列4行的長整數陣列array2,同時起始元素的陣列各元素的初值。
long array1[2][4] = {1, 2, 3, 4, 5, 6, 7, 8}; //各元素的起始值皆不同
long z = array2[1][2] //x = 7
下面範例指起始陣列部分資料,而C++會指定0給為起始的元素,如array[1][0]=5,而array[0][3]=0。
double array[2][4] = {
{1,2,3 },
{5, 6 }
};
.
.
double x = array[1][0]
double y = array[0][3]
練習:
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char** argv)
{
int eq[2][2] = { {8, 7},
{4, 8} };
cout << "行列x值\n";
int c = eq[0][0] * eq[1][1] - eq[1][0] * eq[0][1];
cout << "x = |" << eq[0][0] << " " << eq[0][1] << "| = ";
cout << c << endl;
cout << " |" << eq[1][0] << " " << eq[1][1] << "| \n ";
system("PAUSE");
return 0;
}
輸出結果: