陣列與結構 陣列與結構 陣列宣告: 資料型別 陣列名稱[陣列大小]; 含陣列值初始化: 資料型別 陣列名稱[陣列大小]={值1, 值2, 值3 …}; 陣列存取 範例6-1ab , p.6-4 使用陣列索引值(由0開始) 陣列應用一:排序 泡沫排序法 計數排序法 陣列應用二:搜尋 線性搜尋法 二分搜尋法 範例6-1e , p.6-13 範例6-1f , p.6-16 範例6-1h , p.6-23 範例6-1i , p.6-26

Download Report

Transcript 陣列與結構 陣列與結構 陣列宣告: 資料型別 陣列名稱[陣列大小]; 含陣列值初始化: 資料型別 陣列名稱[陣列大小]={值1, 值2, 值3 …}; 陣列存取 範例6-1ab , p.6-4 使用陣列索引值(由0開始) 陣列應用一:排序 泡沫排序法 計數排序法 陣列應用二:搜尋 線性搜尋法 二分搜尋法 範例6-1e , p.6-13 範例6-1f , p.6-16 範例6-1h , p.6-23 範例6-1i , p.6-26

陣列與結構
陣列與結構
陣列宣告:
資料型別 陣列名稱[陣列大小];
含陣列值初始化:
資料型別 陣列名稱[陣列大小]={值1, 值2, 值3 …};
陣列存取
範例6-1ab , p.6-4
使用陣列索引值(由0開始)
陣列應用一:排序
泡沫排序法
計數排序法
陣列應用二:搜尋
線性搜尋法
二分搜尋法
範例6-1e , p.6-13
範例6-1f , p.6-16
範例6-1h , p.6-23
範例6-1i , p.6-26
動態物件與動態物件陣列(1)
靜態物件(陣列):設計階段所佈置者
動態物件(陣列):執行階段所產生者
如何使用動態物件(陣列)?
1. 宣告物件(陣列):
型別 * 名稱;
TEdit * edi;
2. 產生物件(陣列)
3. 存取物件(陣列)
動態物件與動態物件陣列(2)
1. TEdit * edi;
2. 動態產生物件(陣列):
edi = new TEdit(this);
edi -> Parent = Form1; //設定容器物件
edi -> Text = “5”; //設定內容,非必要
edi -> Left=60;
// 設定x,非必要
edi -> Top=60; // 設定y,非必要
edi -> Show();
3. 物件(陣列)存取:
Form1 -> Caption = edi -> Text;
範例6-2a-e , p.6-31
結構
用以儲存不同型別資料的單元,不同於陣列只能儲存
同一型別的資料
型別宣告:
struct 結構名稱{
資料型別 名稱1;
資料型別 名稱2;
…
資料型別 名稱n;
範例6-3a , p.6-46
};
使用方式: 結構名稱.資料名稱
指標
直接與記憶體打交道,程式執行效率高
指標變數宣告:
資料型別 *指標變數名稱;
指標變數  代表位址
* 指標變數  代表位址內的值
指標與陣列
範例6-4a , p.6-52
指標名稱=陣列名稱
指標名稱=指標名稱+1 或指標名稱++  移動陣列位置
*指標名稱  取出陣列內的值
指標
指標與陣列
指標名稱=陣列名稱
指標名稱=指標名稱+1 或指標名稱++  移動陣列位置
*指標名稱  取出陣列內的值
int a[6]={0,55,66,77,88,99}; //宣告陣列a
int *ptr; // 宣告指標變數ptr
// -----------------------------------------------ptr=a;
 將ptr指向a[0]
 ptr[0]=0, ptr[1]=55, ptr[2]=66 …..
*ptr
0
// ------------------------------------------------ptr=&a[1];  將ptr指向a[1]
 ptr[0]=55, ptr[1]=66 …..
*ptr
 55