More Related Content
Similar to งานทำ Blog บทที่ 8
Similar to งานทำ Blog บทที่ 8 (18)
More from รัสนา สิงหปรีชา
More from รัสนา สิงหปรีชา (20)
งานทำ Blog บทที่ 8
- 2. ตัวแปรอาร์เรย์ (Array Variable)
ตัวแปรอาร์เรย์ (Array Variable) เปรียบเสมือนการนาตัวแปร
มาเรียงต่อกันหลาย ๆ ตัว โดยที่ทุกตัวมีชนิดข้อมูลเดียวกัน มีชื่อตัว
แปรเดียวกัน แต่สามารถอ้างถึงตาแหน่งข้อมูลแต่ละตัวที่เรียงต่อกัน
ด้วยลาดับการจัดเรียง ซึ่งเรียกตาแหน่งข้อมูลแต่ละตัวว่า อินเด็กซ์
(Index)
ตัวแปรอาร์เรย์ในภาษา C นั้น สามารถแยกได้ 2 แบบคือ
1 ตัวแปรอาร์เรย์ 1 มิติ
2 ตัวแปรอาร์เรย์หลายมิติ
- 3. ตัวแปรอาร์เรย์ 1 มิติ (One Dimension Array)
ตัวแปรอาร์เรย์ 1 มิติ (One Dimension Array) เปรียบได้
กับการนาตัวแปรมาเรียงต่อกันหลาย ๆ ตัว ในลักษณะของแถว
ข้อมูล ซึ่งเราจะจาลองตัวอย่างตัวแปรอาร์เรย์ 1 มิติ ชื่อตัวแปร
intEx1 เป็นตัวแปรชนิดจานวนเต็มที่สามารถเก็บข้อมูลจานวน
เต็มได้ 6 ตัว เช่น
[0] [1] [2] [3] [4] [5] 7 1 5 2 0 0
- 4. จากตัวอย่างจะเห็นว่า ตัวแปรอาร์เรย์สามารถเก็บข้อมูลได้ 6 ตัว โดยที่
ตัวแปรตัวแรก คือ ตาแหน่งอินเด็กซ์ที่ 0 มีค่าเท่ากับ 7 ซึ่งสามารถ
เขียนได้เป็น intEx1[0] = 7
ตัวแปรตัวที่ 2 คือ ตาแหน่งอินเด็กซ์ที่ 1 มีค่าเท่ากับ 1 ซึ่งสามารถ
เขียนได้เป็น intEx1[1] = 1
ตัวแปรตัวที่ 3 คือ ตาแหน่งอินเด็กซ์ที่ 2 มีค่าเท่ากับ 5 ซึ่งสามารถ
เขียนได้เป็น intEx1[2] = 5
ตัวแปรตัวที่ 4 คือ ตาแหน่งอินเด็กซ์ที่ 3 มีค่าเท่ากับ 2 ซึ่งสามารถ
เขียนได้เป็น intEx1[3] = 2
ตัวแปรตัวที่ 5 คือ ตาแหน่งอินเด็กซ์ที่ 4 มีค่าเท่ากับ 0 ซึ่งสามารถ
เขียนได้เป็น intEx1[4] = 0
ตัวแปรตัวสุดท้าย คือ ตาแหน่งอินเด็กซ์ที่ 5 มีค่าเท่ากับ 0 ซึ่ง
สามารถเขียนได้เป็น intEx1[5] = 0
- 5. ตัวแปรอาร์เรย์หลายมิติ (multi – Dimension Array)
ตัว แปรอาร์เรย์หลายมิติ คือ ตัวแปรที่มีมุม มองการ
เข้าถึงข้อมูลของตัวแปรได้มากกว่า 1 ด้าน เช่น
• ตัวแปรอาร์เรย์ 2 มิติ (2 – Dimension Array)
• ตัวแปรอาร์เรย์ 3 มิติ (3 – Dimension Array)
- 6. ตัวแปรอาร์เรย์ 2 มิติ (2 – Dimension Array)
ตัวแปรอาร์เรย์ 2 มิติ เปรียบได้กับการนาตัวแปรมาเรียงต่อกัน
หลาย ๆ ตัวในลักษณะของตารางข้อมูล จะเป็นการเก็บข้อมูลในแนว
แถวและหลัก การอ้างถึงเซลล์ในอาร์เรย์จะต้องใช้อินเด็กซ์ที่อ้างไปยัง
แถวและหลัก การเก็บข้อมูลบางประเภทนั้นตัวแปรอาร์เรย์แบบมิติ
เดียวจะทางานไม่สะดวก ซึ่งอาจต้องใช้ตัวแปรอาร์เรย์แบบ 2 มิติ
[0][0] [0][1] [0][2] [0][3] [0][4]
2 0 0 9 1
[1][0] [1][1] [1][2] [1][3] [1][4] 9 8 6 3 2
[2][0] [2][1] [2][2] [2][3] [2][4] 5 7 7 1 5
- 7. จะเห็นว่า ตัวแปรอาร์เรย์ที่มีขนาด 3 แถว 5 คอลัมน์ สามารถเก็บ
ข้อมูลได้ 15 ตัว โดยที่
• ตัวแปรแถวที่ 1 คอลัมน์ที่ 1 มีค่าเท่ากับ 2 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 2
• ตัวแปรแถวที่ 1 คอลัมน์ที่ 2 มีค่าเท่ากับ 0 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 0
• ตัวแปรแถวที่ 1 คอลัมน์ที่ 5 มีค่าเท่ากับ 1 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 1
• ตัวแปรแถวที่ 3 คอลัมน์ที่ 1 มีค่าเท่ากับ 5 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 5
• ตัวแปรแถวที่ 3 คอลัมน์ที่ 2 มีค่าเท่ากับ 7 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 7
• ตัวแปรแถวที่ 3 คอลัมน์ที่ 5 มีค่าเท่ากับ 5 ซึ่งสามารถเขียนได้เป็น intEx2[0][0] = 5
- 8. ตัวแปรอาร์เรย์ 3 มิติ (3 – Dimension Array)
ตัวแปรอาร์เรย์ 3 มิติ เปรียบได้กับการนาตัวแปรมาเรียงต่อกัน
หลาย ๆ ตั ว ในลั ก ษณะของกล่ อ งข้ อ มู ล หรื อ เรี ย กอี ก อย่ า งว่ า
อาร์เรย์ของอาร์เรย์ 2 มิติ
[0][0][0] [0][0][1] [0][0][2] [0][0][3] 9 2 1 7
[0][1][0] [0][1][1] [0][1][2] [0][1][3] 8 5 9 8
4 6 3 7
[0][2][0] [0][2][1] [0][2][2] [0][2][3]
9 2 1 7
8 5 9 8
4 6 3 7
[1][0][0] [1][0][1] [1][0][2] [1][0][3] 7 1 4 5
[1][1][0] [1][1][1] [1][1][2] [1][1][3] 3 7 1 6
[1][2][0] [1][2][1] [1][2][2] [1][2][3] 2 8 9 2
- 9. จะเห็นว่า ตัวแปรอาร์เรย์ที่มีขนาด 2 บล็อก 3 แถว 4 คอลัมน์ สามารถ
เก็บข้อมูลได้ 24 ตัว
• ตัวแปรบล็อกที่ 1 แถวที่ 1 คอลัมน์ที่ 1 มีค่าเท่ากับ 9 เขียนได้เป็น intEx3[0][0][0] = 9
• ตัวแปรบล็อกที่ 1 แถวที่ 1 คอลัมน์ที่ 2 มีค่าเท่ากับ 2 เขียนได้เป็น intEx3[0][0][1] = 2
• ตัวแปรบล็อกที่ 1 แถวที่ 1 คอลัมน์ที่ 3 มีค่าเท่ากับ 1 เขียนได้เป็น intEx3[0][0][2] = 1
• ตัวแปรบล็อกที่ 1 แถวที่ 2 คอลัมน์ที่ 1 มีค่าเท่ากับ 8 เขียนได้เป็น intEx3[0][1][0] = 8
• ตัวแปรบล็อกที่ 1 แถวที่ 2 คอลัมน์ที่ 2 มีค่าเท่ากับ 5 เขียนได้เป็น intEx3[0][1][1] = 5
• ตัวแปรบล็อกที่ 1 แถวที่ 3 คอลัมน์ที่ 4 มีค่าเท่ากับ 7 เขียนได้เป็น intEx3[0][2][3] = 7
• ตัวแปรบล็อกที่ 2 แถวที่ 1 คอลัมน์ที่ 1 มีค่าเท่ากับ 7 เขียนได้เป็น intEx3[1][0][0] = 7
• ตัวแปรบล็อกที่ 2 แถวที่ 1 คอลัมน์ที่ 2 มีค่าเท่ากับ 1 เขียนได้เป็น intEx3[1][0][1] = 1
• ตัวแปรบล็อกที่ 2 แถวที่ 1 คอลัมน์ที่ 3 มีค่าเท่ากับ 4 เขียนได้เป็น intEx3[1][0][2] = 4
• ตัวแปรบล็อกที่ 2 แถวที่ 2 คอลัมน์ที่ 1 มีค่าเท่ากับ 3 เขียนได้เป็น intEx3[1][1][0] = 3
• ตัวแปรบล็อกที่ 2 แถวที่ 2 คอลัมน์ที่ 2 มีค่าเท่ากับ 7 เขียนได้เป็น intEx3[1][1][1] = 7
• ตัวแปรบล็อกที่ 2 แถวที่ 3 คอลัมน์ที่ 4 มีค่าเท่ากับ 2 เขียนได้เป็น intEx3[1][2][3] = 2
- 10. การเขียนโปรแกรมกับตัวแปรอาร์เรย์
การใช้ งานตั ว แปรอาร์เ รย์ใ นการเขี ยนโปรแกรม
เช่น
• การประกาศตัวแปรอาร์เรย์
• การกาหนดค่าข้อมูลให้ตัวแปรอาร์เรย์
• การอ้างถึงข้อมูลในตัวแปรอาร์เรย์
- 12. การกาหนดค่าข้อมูลให้ตัวแปรอาร์เรย์
การกาหนดค่าให้กับตัวแปรอาร์เรย์นั้น มีรูปแบบเหมือนกับ
การกาหนดค่าให้กับตัวแปรทั่วไป ต่างกันเพียงแต่การกาหนดค่าให้กับ
ตัวแปรอาร์เรย์นั้น เราต้องกาหนดตาแหน่งอินเด็กซ์เพื่อระบุตาแหน่ง
ของตัวแปรที่จะกาหนดค่า เช่น
int intNum[5];
char chPassword[4]
float fPrice[4][2];
int intNo[4][5];
int intCount[4][5];
จะเห็นว่ามีการกาหนดขนาดตัวแปรไว้ด้วยเครื่องหมาย [] เช่น
ตัวแปรชนิดจานวนเต็มชื่อ intNo ขนาด 4 แถว 5 คอลัมน์ เป็นต้น
- 13. การอ้างถึงข้อมูลในตัวแปรอาร์เรย์
วิ ธี ก ารอ่ า นข้ อ มู ล จากตั ว แปรโดยการระบุ ต าแหน่ ง ข้ อ มู ล ที่
ต้องการลงไป หรือที่เรียกกันว่า อินเด็กซ์ (Index) ซึ่งมีตัวอย่าง
การใช้งานดังนี้
Ans = intScore[2] * 3;
fsum = fPrice[3][2] + fPrice[3][2];
intNum = intNume[1] + intNum[2];
เหนื่อย ก็
นัก พักก่อน
- 14. www,378700000.com
จากตัวอย่างจะเห็นว่า เราเรียกใช้งานตัวแปรอาร์เรย์โดยระบุ
ตาแหน่งข้อมูลภายในเครื่องหมาย []
เช่น Ans = intScore[2] * 3;
เป็นการกาหนดค่าให้กับตัวแปร Ans โดยมีค่ามาจากผลคูณ
ระหว่างค่าในตัวแปรอาร์เรย์ตาแหน่งที่ 3 กับ 3 เป็นต้น
- 15. ที่มา : คู่มืออบรมครูวิทยาศาสตร์ คณิตศาสตร์ คอมพิวเตอร์ โลก ดาราศาสตร์ และอวกาศ ระดับมัธยมศึกษาตอนปลาย
หนังสือเรียนรายวิชาเพิ่มเติม การเขียนโปรแกรมเบื้องต้นด้วยภาษา C บริษทซัคเซสมีเดีย
คู่มือเรียนเขียนโปรแกรมภาษา สานักพิมพ์ IDC PREMIER