iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 29
1
自我挑戰組

學習30天的c++系列 第 29

DAY29 學習30天的c++

陣列
陣列:使用同一個變數儲存一組相同型態的資料,然後以相同的名稱,但不同的註標存取中個別的資料。
宣告二維陣列

  • 一維陣列的註標如直線[x]座標,二維陣列的註標如平面[y],[x]座標,三維陣列的註標類似空間[z],[y],[x],以此類推,最多可達到60個維度。
    下面範例是宣告一個3列5行的整數陣列a,陣列的註標是由0開始,所以4列表是0,1,2,3,而6行表示0,1,2,3,4,5。
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;
}

輸出結果:
https://ithelp.ithome.com.tw/upload/images/20201014/20130658Hwdym0v8wV.png

起始二維陣列

  • 大括號適用於起始陣列初值。只有起始陣列初值時,可一次起始所有元素。
  • 若要指定陣列元素的值於宣告陣列完後,則不能用大括號,而且一次只能指定一值給一個元素。
    下面範例是宣告一個2列4行的長整數陣列array1,並起始元素的陣列的所有元素為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;
}

輸出結果:
https://ithelp.ithome.com.tw/upload/images/20201014/20130658NV9XfkDxJu.png


上一篇
DAY28 學習30天的c++
下一篇
DAY 學習30天的c++
系列文
學習30天的c++30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言