บทที่ 5...

31
บบบบบ 5 บบบบบบบบบบบบบบบบบบบบบบบ บบบบบบ 1. บบบบบบบบบบบบบบบบบบบบบบบบบบบบบบบบบ บบบ ตตตตตตตตตตตตตตตตตตตตต ตตตตตตตตตตตตตตตตต ( Array Variable) ตตตตตตตตตตตตตตตตตตตตตตตตตตต ตตตตตตตตต ตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตตต ตตตตตตตตตตต ตตตตตตตตตตตตตตตตตตตตตตตตตต ตตตตตตต ตต ( Element ) ตตตตตตตตตตตตตตตตตตต ตตตตตตตตตตตตตต ตตตตตตตตตตตต 1.1 บบบบบบบบบบบบบบบบบบบบบบบบบบบบ ตตตตตตตตตตตตตตตตตตตตตตตตตตต ตตตตตตต ตตต ตตตตตตตตตตตตตตตตตตตตตตตตตต ตตตตตตตตตตตตตตตตต ตตตตตตตตตตตตตตต ( Dimension ) ตตตตตตตตตตตตตตตต ตตตตตตตตต 3 ตตตตตต ตตต ตตต 1 ตตตต ตตต 2 ตตตต ตตตตตต 3 ตตตต 1.1.1 บบบบบบบบบบบบบบบบบบบบบบบบบ 1 บบบบ ตตตตตต 1.1.2 บบบบบบบบบบบบบบบบบบบบบบบบบ 2 บบบบ ตตตตตต type array_name type array_name

Upload: mook-sasivimon

Post on 25-Jun-2015

286 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

บทท�� 5 ตั�วแปรชุ ดและตั�วแปรกล �มอั�กขระ

1. ประสิ�ทธิ�ภาพการเก�บข�อัม�ลแบบตั�วแปรชุ ด

ตั�วแปรชุ�ดหร�อเร�ยกว�า ตั�วแปรแบบอาร�เรย� ( Array Variable) มี�ลั�กษณะเป�นข้�อมี�ลัโครงสร�างชุน$ดหน%&ง ประกอบไปด�วยข้�อมี�ลัชุน$ดพื้�)นฐานหลัายๆตั�ว รวมีกลั��มีก�น ข้�อมี�ลัแตั�ลัะตั�วน�)นเร�ยกว�า อ�ลั�เมีนตั�( Element ) แลัะทุ�กอ�ลั�เมีนตั�น�)น ตั�องเป�นข้�อมี�ลัชุน$ดเด�ยวก�น

1.1 คำ!าสิ��งก!าหนดล�กษณะตั�วแปรชุ ด

การก-าหนดลั�กษณะข้องตั�วแปรชุ�ด หมีายถึ%ง การก-าหนดว$ธี�การจั�ดเก1บข้�อมี�ลั โดยใชุ�ตัารางข้�อมี�ลั ทุ�&เร�ยกว�ามี$ตั$ ( Dimension ) แบ�งตัามีลั�กษณะการทุ-างานได� 3 ร�ปแบบ ค�อ แบบ 1 มี$ตั$ แบบ 2 มี$ตั$ แลัะแบบ 3

มี$ตั$

1.1.1 คำ!าสิ��งก!าหนดตั�วแปรชุ ดแบบ 1 ม�ตั�ร�ปแบบ

1.1.2 คำ!าสิ��งก!าหนดตั�วแปรชุ ดแบบ 2 ม�ตั�ร�ปแบบ

1.1.3 คำ!าสิ��งก!าหนดตั�วแปรชุ ดแบบ 3 ม�ตั�ร�ปแบบ

อัธิ�บายtype ค�อชุน$ดข้�อมี�ลัพื้�)นฐาน เชุ�น int, float, char

array_name ค�อชุ�&อตั�วแปรชุ�ด [ n ] ค�อจั-านวนตัารางข้�อมี�ลั

type array_name [ r ] ;

type array_name [ r ] [ c ] ;

type array_name [ n ] [ r ] [ c ] ;

Page 2: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

[ r ] ค�อจั-านวนแถึวข้องตัารางข้�อมี�ลั[ c ] ค�อจั-านวนคอลั�มีน�ข้องตัารางข้�อมี�ลั

1.2 ล�กษณะตัารางข�อัม�ลในหน�วยคำวามจำ!าตั�วแปรชุ ด

ตัารางข้�อมี�ลัเป�นพื้�)นทุ�&ทุ�&ระบบจัองพื้�)นทุ�&ใชุ�งานด�านจั�ดเก1บข้�อมี�ลัข้องตั�วแปรชุ�ด โดยเลั�ยนแบบการด-าเน$นงานแบบตัารางเมีตัร$กทุางคณ$ตัศาสตัร� อธี$บายลั�กษณะตัารางจั�ดเก1บข้�อมี�ลัแตั�ลัะมี$ตั$ ด�งน�)

1.2.1 ล�กษณะตัารางข�อัม�ลตั�วแปรชุ ดแบบ 1 ม�ตั�ตั�วอย�างค-าส�&ง จัองพื้�)นทุ�& เก1บข้�อมี�ลัเลัข้จั-านวนเตั1มี 5 พื้�)นทุ�& ให�

ตั�วแปรชุ�ดชุ�&อ a ตัารางข้�อมี�ลัแบบ 1 มี$ตั$

แสดงลั�กษณะตัารางข้�อมี�ลัในตั�วแปรชุ�ด 1 มี$ตั$

a [ 0 ]ข้�อมี�ลั ...

a [ 1 ]ข้�อมี�ลั ...

a [ 2 ]ข้�อมี�ลั ...

a [ 3 ]ข้�อมี�ลั ...

a [ 4 ]ข้�อมี�ลั ...

1.2.2 ล�กษณะตัารางข�อัม�ลตั�วแปรชุ ดแบบ 2 ม�ตั�ตั�วอย�างค-าส�&ง จัองพื้�)นทุ�&เก1บข้�อมี�ลัเลัข้จั-านวนเตั1มี ให�ตั�วแปรชุ�ดชุ�&อ

a ตัารางข้�อมี�ลัข้นาดพื้�)นทุ�& 2 แถึว 4 คอลั�มีน�

แสดงลั�กษณะตัารางข้�อมี�ลัในตั�วแปรชุ�ด 2 มี$ตั$ ข้นาด 2 แถึว 4

คอลั�มีน�

คอลั�มีน� 0 คอลั�มีน� 1

คอลั�มีน� 2 คอลั�มีน� 3

int a [ 5 ] ;

int a [ 2 ] [ 4 ] ;

Page 3: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

3)

ล�กษณะตัารางข�อัม�ลตั�วแปรชุ ดแบบ 3 ม�ตั�

ตั�วอย�างค-าส�&ง จัองพื้�)นทุ�&เก1บข้�อมี�ลัเลัข้จั-านวนเตั1มี ให�ตั�วแปรชุ�ดชุ�&อ a

ตัารางข้�อมี�ลัข้นาดพื้�)นทุ�& 2 แถึว 2 คอลั�มีน� 2 ตัารางข้�อมี�ลั

แสดงลั�กษณะตัารางข้�อมี�ลัในตั�วแปรชุ�ด 3 มี$ตั$ ข้นาด 2 แถึว 2 คอลั�มีน� 2

ตัาราง

1.3

การ

อั�างอั�งพ*+นท��หน�วยคำวามจำ!าขอังตั�วแปรชุ ด

a [ 0 ] [ 0 ] ข้�อมี�ลั ...

a [ 0 ] [1 ] ข้�อมี�ลั ...

a [ 0 ] [2 ] ข้�อมี�ลั ...

a [ 0 ] [3 ] ข้�อมี�ลั ...

a [ 1 ] [ 0 ] ข้�อมี�ลั ...

a [ 1 ] [1 ] ข้�อมี�ลั ...

a [ 1 ] [2 ] ข้�อมี�ลั ...

a [ 1 ] [3 ] ข้�อมี�ลั ...

ตัารางข้�อมี�ลัทุ�& 0 (มี$ตั$ 3) a [ 0 ] [ 0 ] [ 0 ] ข้�อมี�ลั ...

a [ 0 ][0 ] [1 ] ข้�อมี�ลั ...

a [ 1 ] [ 0 ] [ 0 ] ข้�อมี�ลั ...

a [ 1 ][0 ] [1 ] ข้�อมี�ลั ...

ตัารางข้�อมี�ลัทุ�& 1 (มี$ตั$ 3) a [ 0 ] [ 1 ] [ 0 ] ข้�อมี�ลั ...

a [ 0 ][1 ] [1 ] ข้�อมี�ลั ...

a [ 1 ] [ 1 ] [ 0 ] ข้�อมี�ลั ...

a [ 1 ][1 ] [1 ] ข้�อมี�ลั ...

มี$ตั$ทุ�& 2แถึว 0

แถึว 1

มี$ตั$ทุ�& 1

int a [ 2 ] [ 2 ] [ 2] ;

แถึว 0แถึว 1

คอลั�มีน� คอลั�มีน� คอลั�มีน� คอลั�มีน�

Page 4: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

การอ�างอ$งพื้�)นทุ�&หน�วยความีจั-าข้องตั�วแปรชุ�ดหมีายถึ%ง การน-าข้�อมี�ลัลังตัารางข้�อมี�ลั การอ�านค�าข้�อมี�ลัจัากตัารางข้�อมี�ลั การก-าหนดค�าข้�อมี�ลัลังตัารางข้�อมี�ลั การประมีวลัผลัโดยใชุ�ข้�อมี�ลัจัากตั�วแปรชุ�ดพื้�)นทุ�&ทุ�&ตั�องการ

1.3.1 การป,อันข�อัม�ลลงพ*+นท��หน�วยคำวามจำ!าตั�วแปรชุ ด

การป5อนข้�อมี�ลัจั�ดเก1บลังพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ด ตั�องอ�างอ$งชุ�&อตั�วแปร ตัามีด�วยหมีายเลัข้พื้�)นทุ�& หากตั�องน-าข้�อมี�ลัเข้�า 10 พื้�)นทุ�& จัะตั�องเข้�ยนค-าส�&งอ�างถึ%งทุ�)ง 10 พื้�)นทุ�&ใน 10 ค-าส�&ง ด�งน�)นเพื้�&อความีสะดวกรวดเร1วในการควบค�มีน-าเข้�าข้�อมี�ลัลังพื้�)นทุ�&หน�วยความีจั-า จั%งใชุ�ค-าส�&งควบค�มีวนซ้ำ-)าชุ�วยด-าเน$นงาน ในทุ�&น�)ยกตั�วย�าง การวนซ้ำ-)าควบค�มีการน-าข้�อมี�ลัลังพื้�)นทุ�&ตั�วแปรชุ�ดด�วยค-าส�&ง for ด�งน�) ......................................

ตั�วอย�างค-าส�&ง วนซ้ำ-)าเพื้�&อร�บข้�อมี�ลัลังพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ดแบบ 1 มี$ตั$ จั-านวน 5 พื้�)นทุ�&

อธี$บาย 1. ควบค�มีให�วนซ้ำ-)า 5 รอบ เพื้�&อร�บข้�อมี�ลัคะแนน จั�ดเก1บในหน�วยความีจั-าตั�วแปรชุ�ด ชุ�&อ score จั-านวน 5 พื้�)นทุ�& จัากค-าส�&ง scanf

2. ส-าหร�บ n ค�าแรก ค�อ ค�า 1 แลัะเพื้$&มีค�าทุ�ลัะ 1 แตั�ไมี�เก$น 5

ตั�วอย�างค-าส�&ง วนซ้ำ-)าเพื้�&อร�บข้�อมี�ลัลังพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ดแบบ 2 มี$ตั$ ข้นาดตัารางข้�อมี�ลั 2 แถึว 3 คอลั�มีน�

for (n = 1 ; n <= 5 ; n++) { printf ( “ Score = “ ) ; scanf ( “ %d “ , &score [ n ] ) ; }

for (n = 0; n < 2 ; n++) {

}

for (m = 0 ; m <= 3 ; m++) { printf ( “ Score = “ ) ; scanf ( “ %d “ , &score [ n ] [ m] ) ;

Page 5: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

อธี$บาย กรณ�วนซ้ำ-)าแบบซ้ำ�อนระบบจัะอ�านตั�)งแตั� for วงรอบแรก เข้�ามีาทุ-างานจันวงในส�ด จัากน�)นจั%งวนซ้ำ-)า ในส�ดให�ครบรอบ แลั�วจั%งไปเพื้$&มีค�าวงนอก ทุ-าเชุ�นน�)จันกว�าค�าข้องวงนอกจัะถึ%งค�าส�ดทุ�าย จั%งเลั$กวนซ้ำ-)า

1.3.2 การก!าหนดข�อัม�ลลงพ*+นท��หน�วยคำวามจำ!าตั�วแปรชุ ดกรณ�ตั�องการก-าหนดค�าในตัารางข้�อมี�ลั พื้�)นทุ�&หน�วยความีจั-าข้องตั�วแปรชุ�ด เข้�ยนค-าส�&งได�ด�งน�+

1. คำ!าสิ��งก!าหนดคำ�าให�ตั�วแปรชุ ดแบบ 1 ม�ตั�

ร�ปแบบ

2. คำ!าสิ��งก!าหนดคำ�าให�ตั�วแปรชุ ดแบบ 2 ม�ตั�

ร�ปแบบ

3. คำ!าสิ��งก!าหนดคำ�าให�ตั�วแปชุ ดแบบ 3 ม�ตั�

ร�ปแบบ

อธี$บาย type ค�อชุน$ดข้�อมี�ลัพื้�)นฐาน เชุ�น int, float, char

array_name ค�อชุ�&อตั�วแปรชุ�ด size ค�อข้นาดพื้�)นทุ�&เก1บข้�อมี�ลั value list ค�อข้�อมี�ลัทุ�&ก-าหนดให�ตั�วแปรชุ�ด หากมี�หลัายค�า ให�ใชุ� , ค�&น

type array_name [ size] = { value list } ;

type array_name [ r ] [ c ] = { value list } ;

type array_name [ n ] [ r ] [ c ] = { value list } ;

Page 6: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

[ n ] ค�อจั-านวนตัารางข้�อมี�ลั [ r ] ค�อจั-านวนแถึวข้องตัารางข้�อมี�ลัแตั�ลัะตัาราง[ c ] ค�อจั-านวนคอลั�มีน�ข้องตัารางข้�อมี�ลัแตั�ลัะตัารางตั�วอย�างค-าส�&ง ก-าหนดข้�อมี�ลัจั-านวนเตั1มีในตั�วแปรชุ�ด 5 รายการ ค�อ

ค�า 20, 40, 25, 45, 35

a [ 0 ]ข้�อมี�ลั 20

a [ 1 ]ข้�อมี�ลั 40

a [ 2 ]ข้�อมี�ลั 25

a [ 3 ]ข้�อมี�ลั 45

a [ 4 ]ข้�อมี�ลั 35

แสดงลั�กษณะข้�อมี�ลัในตัารางข้�อมี�ลัตั�วแปรชุ�ด 1 มี$ตั$

1.3.3 การอั�านข�อัม�ลจำากหน�วยคำวามจำ!าตั�วแปรชุ ด การอ�านค�าข้�อมี�ลัจัากพื้�)นทุ�&หน�วยความีจั-าข้องตั�วแปรชุ�ดมีาแสดงผลั ตั�องอ�างอ$งชุ�&อตั�วแปร ตัามีด�วยหมีายเลัข้พื้�)นทุ�&เชุ�นก�น เชุ�น printf (“

%d” , a[ 1 ] ) ; ด�งน�)นเพื้�&อความีสะดวกรวดเร1วในการควบค�มีอ�านค�าข้�อมี�ลัจัากหน�วยความีจั-าทุ�กพื้�)นทุ�&ในตัารางข้�อมี�ลั จั%งใชุ�ว$ธี�เด�ยวก�นก�บการน-าเสนอข้�อมี�ลัลังในพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ด ด�วยการใชุ�ค-าส�&งควบค�มีวนซ้ำ-)า ตั�วอย�างค-าส�&ง อ�านข้�อมี�ลัจัากหน�วยความีจั-าตั�วแปรชุ�ด

อธี$บาย 1. วนซ้ำ-)าด�วยข้�อมี�ลัคะแนนจัากหน�วยความีจั-าตั�วแปรชุ�ดชุ�&อ score จั-านวน 5 พื้�)นทุ�& จัากค-าส�&ง printf ( “ Score = %d \n” ,

score [ n ] ) ;

2. ส-าหร�บ n ค�าแรก ค�อค�า 1 แลัะเพื้$&มีค�าทุ�ลัะ 1 แตั�ไมี�เก$น 5

int a [ 5 ] = { 20 , 40 , 25 , 45, 35 } ;

for (n = 1 ; n <= 5 ; n++) { printf ( “ Score = %d \n” , score [ n ] ) ; }

Page 7: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ตั�วอย�างค-าส�&ง วนซ้ำ-)าเพื้�&อนอ�านข้�อมี�ลัจัากพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ดแบบ 3 มี$ตั$ข้นาดตัารางข้�อมี�ลั 2 ตัาราง 3 แถึว 2 คอลั�มีน�

2. ประสิ�ทธิ�ภาพการเก�บข�อัม�ลแบบกล �มอั�กขระ

ตั�วแปรแบบกลั��มีอ�กข้ระ หร�อเร�ยกว�า ตั�วแปรแบบสตัร$ง (String

Variable) เป�นข้�อมี�ลัตั�วแปรชุ�ดประเภทุหน%&งทุ�&มี�ลั�กษณะเป�นข้�อมี�ลัประเภทุข้�อความี ประกอบด�วยอ�กข้ระมีากกว�า 1 ตั�ว ใชุ�เน�)อทุ�& 1 อ�กข้ระตั�อ 1 ไบตั� การส$)นส�ดกลั��มีข้�อมี�ลัประเภทุข้�อความีด�วยการกดแป5น Enter

ระบบจัะแทุนค�าในหน�วยความีจั-า ด�วยส�ญลั�กษณ� “ \0 ” ด�งน�)น การก-าหนดข้นาดพื้�)นทุ�&ให�ข้�อความี ตั�องค-านวณพื้�)นทุ�&บวก 1 ค�าไว�เสมีอ

2.1 คำ!าสิ��งก!าหนดล�กษณะตั�วแปรแบบกล �มอั�กขระการก-าหนดลั�กษณะข้องตั�วแปรกลั��มีอ�กข้ระ เป�นการจัองพื้�)นทุ�&ข้นาด

ตัารางข้�อมี�ลัเพื้�&อใชุ�ในการจั�ดเก1บกลั��มีข้�อมี�ลัเฉพื้าะอ�กข้ระเทุ�าน�)น ยก

for (n = 0 ; n < 2 ; n++) {

}

for (m = 0; m < 3 ; m++) {

}

for (p = 0; p < 2 ; p++) { num = score [ n ] [m] [p] ; printf (“

char array_name [r] ;

Page 8: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ตั�วอย�างตั�วแปรแบบ 1 มี$ตั$ แลัะ 2 มี$ตั$ ด�งน�) 2.1.1 คำ!าสิ��งก!าหนดตั�วแปรกล �มอั�กขระแบบ 1 ม�ตั� ร�ปแบบ

2.1.2 คำ!าสิ��งก!าหนดตั�วแปรกล �มอั�กขระแบบ 2 ม�ตั�

ร�ปแบบ

อธี$บาย array_name ค�อชุ�&อตั�วแปรแบบกลั��มีอ�กข้ระ

[ r ] ค�อจั-านวนแถึวข้องตัารางข้�อมี�ลั [ c ] ค�อจั-านวนคอลั�มีน�ข้องตัารางข้�อมี�ลัตั�วอย�างค-าส�&ง ก-าหนดข้�อมี�ลัเป�นตั�วแปรชุ�ดกลั��มีอ�กข้ระ

อธี$บาย เก1บข้�อมี�ลัได� 9 อ�กข้ระ เพื้ราะตั�องมี�พื้�)นทุ�&ส-าหร�บ “ \0 ” ส-าหร�บส$)นส�ดข้�อความี

2.2 คำ!าสิ��งก!าหนดคำ�าให�ตั�วแปรชุ ดแบบกล �มอั�กขระการเข้�ยนค-าส�&งในโปรแกรมีให�จั�ดเก1บค�าข้�อมี�ลัเฉพื้าะกลั��มีอ�กข้ระ ใน

ตัารางข้�อมี�ลัทุ�&จัองพื้�)นทุ�&ไว�โดยไมี�ตั�องป5อนข้�อมี�ลัน�)นๆ ผ�านทุางแป5นพื้$มีพื้� เข้�ยนค-าส�&งด�งน�)

2.2.1 คำ!าสิ��งก!าหนดคำ�าตั�วแปรแบบกล �มอั�กขระ 1 ม�ตั�ร�ปแบบ

char array_name [r] [ c ] ;

char a [10];

char array_name [size] = “ string constant “ ;

Page 9: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ตั�วอย�างค-าส�&ง ก-าหนดข้�อมี�ลัตั�วอ�กษร “X Y Z “ ให�จั�ดเก1บในตั�วแปรชุ�ดชุ�&อ b

แสดลั�กษณะการเก1บข้�อมี�ลัในตัารางข้�อมี�ลัตั�วแปรชุ�ดประเภทุกลั��มีอ�กข้ระ แบบ 1

มี$ตั$

\0 ค�อ ค�า null character

2.2.2 ค-าส�&งก-าหนดค�าตั�วแปรแบบกลั��มีอ�กข้ระ 2 มี$ตั$ร�ปแบบ

อธี$บายarray_name ค�อชุ�&อตั�วแปรแบบกลั��มีอ�กข้ระ

string constant list ค�อข้�อมี�ลัชุน$ดอ�กข้ระ หากมี�หลัายรายการให�ใชุ� , ค�&น [ r ] ค�อจั-านวนแถึวข้องตัารางข้�อมี�ลั [ c ] ค�อจั-านวนคอลั�มีน�ข้องตัารางข้�อมี�ลัตั�วอย�างค-าส�&ง ก-าหนดให�จั�ดเก1บข้�อมี�ลั “ABC” , “DEF” ลังหน�วยคงามีจั-าตั�วแปรชุ�ด

แสดงลั�กษณะการเก1บข้�อมี�ลัในตัารางตั�วแปรชุ�ดประเภทุกลั��มีอ�กข้ระแบบ 2

มี$ตั$

a [ 0 ]ข้�อมี�ลั X

a [ 1 ]ข้�อมี�ลั Y

a [ 2 ]ข้�อมี�ลั Z

a [ 3 ]ข้�อมี�ลั \0

char b [4] = “ X Y Z “ ;

char array_name [ r ] [ c ] = { “ string constant list “ } ;

char a [ 2 ] [ 4 ] = { “ ABC “ , “DEF “ } ;

Page 10: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

คอลั�มีน� 0 คอลั�มีน� 1

คอลั�มีน� 2 คอลั�มีน� 3

2.3

การอั�างอั�งข�อัม�ลในตัารางข�อัม�ลตั�วแปรชุ ดกล �มอั�กขระ

ตั�วแปรชุ�ดกลั��มีอ�กข้ระ ใชุ�ว$ธี�การอ�างอ$งหน�วยความีจั-าเชุ�นเด�ยวก�บตั�วแปรชุ�ดแบบอ�&นๆ แลัะใชุ�ค-าส�&ง for ควบค�มีการวนซ้ำ-)าด-าเน$นงานก�บข้�อมี�ลั ด�งน�)

2.3.1 การก!าหนดข�อัม�ลให�ตั�วแปรกล �มอั�กขระ และอั�านคำ�ามาใชุ�งานตั�วอย�างค-าส�&ง ก-าหนดข้�อมี�ลัจั�ดเก1บลังหน�วยความีจั-าตั�วแปรชุ�ดกลั��มีอ�กข้ระ 2 มี$ตั$

ตั�วอย�างค-าส�&ง ควบค�มีให�วนซ้ำ-)าอ�านค�าข้�อมี�ลัจัากหน�วยความีจั-าตั�วแปรชุ�ดกลั��มีอ�กข้ระ 2 มี$ตั$

a [ 0 ] [ 0 ] ข้�อมี�ลั A

a [ 0 ] [1 ] ข้�อมี�ลั B

a [ 0 ] [2 ] ข้�อมี�ลั C

a [ 0 ] [3 ] ข้�อมี�ลั \0

a [ 1 ] [ 0 ] ข้�อมี�ลั D

a [ 1 ] [1 ] ข้�อมี�ลั E

a [ 1 ] [2 ] ข้�อมี�ลั F

a [ 1 ] [3 ] ข้�อมี�ลั \0

แถึว 0แถึว 1

มี$ตั$ทุ�& 2

มี$ตั$ทุ�& 1

char name [ 5 ] [ 20 ] = { “Panya, Pawat, Pattraporn, Patcharawarai, Pilin “ } ;

for (i = 0 ; i < 4 ; i++) { printf ( “ %d ” , i+1 ) ; printf ( “ %P \n ” , name [ i ] ) ; }

Page 11: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

2.3.2 การป,อันคำ�าและอั�านคำ�าจำากหน�วยคำวามจำ!าตั�วแปรชุ ดกล �มอั�กขระ

ตั�วอย�างค-าส�&ง จัองพื้�)นทุ�&หน�วยความีจั-าให�ตั�วแปรชุ�ดกลั��มีอ�กข้ระลั�กษณะ 2

มี$ตั$

ตั�วอย�างค-าส�&ง วนซ้ำ-)าร�บค�าจัากแป5นพื้$มีพื้� เพื้�&อจั�ดเก1บลังพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ดกลั��มีอ�กข้ระ

ตั�วอย�างค-าส�&ง วนซ้ำ-)าอ�านค�าจัากพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ดกลั��มีอ�กข้ระมีาแสดงผลั

3. กรณ�ศึ/กษาการใชุ�ตั�วแปรชุ ด

char name [ 5 ] [ 20 ] ;

for (i = 0 ; i < 4 ; i++) { printf ( “ name = > ” ) ; gets ( name [ i ] ) ; }

for (i = 0 ; i < 4 ; i++) { printf ( “ %d ” , i+1 ) ; printf ( “ %P \n ” , name [ i ] ) ; }

Page 12: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

3.1 กรณ�ศึ/กษาการอั�างอั�งข�อัม�ลประเภทตั�วแปรในหน�วยคำวามจำ!าตั�วแปรชุ ดแบบ 1 ม�ตั�

โจำทย1 : จังเข้�ยนโปรแกรมีระบบงานเพื้�&อน-าข้�อมี�ลัคะแนนน�กเร�ยน 5 ราย จั�ดเก1บลังหน�วยความีจั-าตั�วแปรชุ�ด

แลั�วอ�านค�าข้�อมี�ลัคะแนนน�กเร�ยนทุ�)ง 5 รายจัากหน�วยความีจั-าตั�วแปรชุ�ดมีาแสดงทุ�&จัอภาพื้

ร�ปผั�งงานท�� 5.1 ผ�งงานจัากโปรแกรมีตั�วอย�างทุ�& 5.1

ตั�วอัย�างโปรแกรมท�� 5.1 กรณ�ศ%กษาโปรแกรมีระบบงาน ป5อนแลัะอ�านข้�อมี�ลั จัากตัารางพื้�)นทุ�&ตั�วแปรชุ�ด 1 มี$ตั$

Page 13: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร
Page 14: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ร�ปท�� 5.1 ผลัทุดสอบโปรแกรมีตั�วอย�างทุ�& 5.1 ส�วนป5อนข้�อมี�ลัลังพื้�)นทุ�&ตั�วแปรชุ�ด 1 มี$ตั$

ร�ปท�� 5.2 ผลัทุดสอบโปรแกรมีตั�วอย�างทุ�& 5.1 ส�วนอ�านข้�อมี�ลัจัากตั�วแปรชุ�ด 1 มี$ตั$

อัธิ�บาย โปรแกรมีน�)ควบค�มีการทุ-างานเป�นค�าคงทุ�&ในโปรแกรมี ค�อ 5 รอบ

3.2 กรณ�ศึ/กษา การอั�างอั�งข�อัม�ลประเภทคำ�าคำงท��ในหน�วยคำวามจำ!าตั�วแปรชุ ดแบบ 1 ม�ตั�

Page 15: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

โจำทย1 : จังเข้�ยนโปรแกรมีระบบงานเพื้�&อก-าหนดค�าคะแนนน�กเร�ยน 5 รายในตั�วโปรแกรมี ด�งน�) 15.5, 19.5,

10.0, 12.5, 19.7 แลั�วอ�านข้�อมี�ลัทุ�&น-าไปจั�ดเก1บในตัารางข้�อมี�ลัน�)นมีาแสดงผลัทุ�&จัอภาพื้

ตั�วอัย�างโปรแกรมท�� 5.2 กรณ�ศ%กษาโปรแกรมีระบบงาน ก-าหนดข้�อมี�ลัแลัะอ�านค�าจัากหน�วยความีจั-าตั�วแปรชุ�ด 1 มี$ตั$

Page 16: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ร�ปท�� 5.3 ผลัทุดสอบโปรแกรมีตั�วอย�างทุ�& 5.2

อัธิ�บาย ระบบวนซ้ำ-)าอ�านค�าข้�อมี�ลั คะแนนน�กเร�ยนจั-านวน 5 ราย จัากหน�วยความีจั-าตั�วแปรชุ�ดจัากทุ�&เข้�ยน

ค-าส�&งก-าหนดข้�อมี�ลัไว�ในโปรแกรมี

3.3 กรณ�ศึ/กษาการอั�างอั�งข�อัม�ลประเภทตั�วแปรในหน�วยคำวามจำ!าตั�วแปรชุ ดแบบ 2 ม�ตั�

โจำทย1 : จังเข้�ยนโปรแกรมีระบบงานเพื้�&อป5อนข้�อมี�ลัคะแนนน�กเร�ยน 2 ราย แตั�ลัะรายตั�องป5อนคะแนนจั-านวน

3 ว$ชุา บ�นทุ%กลังหน�วยความีจั-าแบบตั�วแปรชุ�ด แลั�วอ�านค�าจัากหน�วยความีจั-าตั�วแปรชุ�ดแสดงผลัทุ�&

จัอภาพื้

ว$เคราะห�ตัารางข้�อมี�ลัจัากโจัทุย�ตั�องใชุ�ตั�วแปรชุ�ดข้นาด 2 มี$ตั$ ข้นาด 2 แถึว x 3 คอลั�มีน� ได�ตัารางข้�อมี�ลัข้นาด 6 ห�องค�อ

Page 17: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ร�ปผั�งงานท�� 5.2 ผ�งงานโปรแกรมีตั�วอย�างทุ�& 5.3

ตั�วอัย�างโปรแกรมท�� 5.3 กรณ�ศ%กษาโปรแกรมีระบบงาน ป5อนแลัะอ�านข้�อมี�ลั จัากหน�วยความีจั-า

ตั�วแปรชุ�ด 2 มี$ตั$

Page 18: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร
Page 19: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ร�ปท�� 5.4 ผลัทุดสอบโปรแกรมีตั�วอย�าทุ�& 5.3

3.4 กรณ�ศึ/กษาการอั�างอั�งข�อัม�ลประเภทตั�วแปรในหน�วยคำวามจำ!าตั�วแปรชุ ดแบบ 1 ม�ตั�

ก!าหนดรอับวนซ้ำ!+าโดยผั��ใชุ�ระบบงานโปรแกรม

โจำทย1 : จังเข้�ยนข้�)นตัอนการสร�างงานโปรแกรมี เพื้�&อป5อนข้�อมี�ลัชุ�&อรายการว�ตัถึ�ด$บ แลัะราคาข้องว�ตัถึ�ด$บทุ�&ใชุ�

ด-าเน$นงานตัามีจั-านวนทุ�&ผ��ใชุ�ระบบระบ�จั-านวนรายการ แลั�วให�พื้$มีพื้�สร�ปข้�อมี�ลัทุ�&บ�นทุ%กทุ�)งหมีดพื้ร�อมี

พื้$มีพื้�ผลัรวมีจั-านวนเง$นว�ตัถึ�ด$บทุ�)งหมีดทุ�&จั�ดซ้ำ�)อในคร�)งน�) การแสดงผลัทุางจัอภาพื้ให�ออกแบบตัามี

ความีเหมีาะสมีข้องงาน

** หมายเหตั >> ยกตั�วอย�างบางตัอนด�งน�)

Page 20: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ข�+นตัอันการพ�ฒนาโปรแกรม

1.การว�เคำราะห1ระบบงานเบ*+อังตั�น

1.5 ก-าหนดค�ณสมีบ�ตั$ตั�วแปร

ข�อัม�ลชุ*�อัหน�วยคำวาม

จำ!าชุน�ดข�อัม�ล

จั-านวนรายการวตัถึ�ด$บ

n ตั�วเลัข้จั-านวนเตั1มี

ลั-าด�บว�ตัถึ�ด$บ I ตั�วเลัข้จั-านวนเตั1มี

ชุ�&อว�ตัถึ�ด$บ Materialตั�วแปรชุ�ด 1 มี$ตั$

กลั��มีอ�กข้ระ

ราคาตั�นทุ�นว�ตัถึ�ด$บ

Priceตั�วแปรชุ�ด 1 มี$ตั$

จั-านวนเตั1มี

ผลัรวมีตั�นทุ�น Sum ตั�วเลัข้จั-านวนเตั1มี

1.6 ลั-าด�บข้�)นตัอนการทุ-างาน (action)

1) เร$&มีตั�นการทุ-างาน

Page 21: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

2) ป5อนจั-านวนรายการว�ตัถึ�ด$บ (n)

3) ก-าหนดค-าส�&ง for (i=0; i < n ; i++ )

หากค�า I ย�งไมี�เก$นค�า n ให�ทุ-าข้�อ 3.1 หากเก$นให�ไปข้�อ 4)

3.1) ป5อนว�ตัถึ�ด$บ (material [ i ] ), ราคา (price [ i ] )

3.2) วนกลั�บไปข้�อ 3)

4) ก-าหนดค-าส�&ง for (i=0; i < n ; i++)

หากค�า i ย�งไมี�เก$นค�า n ให�ทุ-าข้�อ 4.1 หากเก$นให�ไปข้�อ 5)

4.1) พื้$มีพื้�ว�ตัถึ�ด$บ (material [ i ] ), ราคา (price [ i ] )

4.2) ค-านวณหาผลัรวมี sum = sum + price[ i ]

4.3) วนกลั�บไปข้�อ 4)

5) พื้$มีพื้�ผลัรวมี (sum)

6) ส$)นส�ดการทุ-างาน

2. ล!าด�บการท!างานด�วยผั�งงานโปรแกรม

Page 22: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ร�ปผั�งงานท�� 5.3 ผ�งงานกรณ�ศ%กษาจัากโปรแกรมีตั�วอย�างทุ�& 5.4

คำ!าถาม

1. ตั�วแปรชุ ด เร�ยกอั�กชุ*�อัหน/�งว�าอัะไร

1. ตั�วแปรแบบแอมีเรย�2. ตั�วแปรแบบสตัร$ง3. ตั�วแปรแบบตั�วแปรชุ�ด4. ตั�วแปรแบบอาร�เรย�

2. คำ!าสิ��งก!าหนดล�กษณะตั�วแปรชุ ด ม�ก��ร�ปแบบ

Page 23: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

1. มี� 2 ร�ปแบบ2. มี� 3 ร�ปแบบ3. มี� 4 ร�ปแบบ4. มี� 5 ร�ปแบบ

3. type คำ*อัอัะไร

1. ชุ�&อตั�วแปรชุ�ด2. ชุน$ดข้�อมี�ลัพื้�)นฐาน3. ชุน$ดข้องตัารางข้�อมี�ลั4. ข้นาดพื้�)นทุ�&เก1บข้�อมี�ลั

4. ล�กษณะตัารางข�อัม�ลในหน�วยคำวามจำ!าตั�วแปรชุ ด โดยตัารางข�อัม�ลจำ�ดเก�บข�อัม�ลตั�วแปรชุ ด โดยเล�ยนแบบตัารางแบบใด

1. แบบตัารางเมีตัร$ก2. แบบตัารางพื้�ทุาโกร�ส3. แบบตัารางแจักแจังความีถึ�&4. แบบตัารางปกตั$

5. การอั�างอั�งพ*+นท��หน�วยคำวามจำ!าขอังตั�วแปรชุ ด คำ*อัอัะไร1. การก-าหนดว$ธี�การจั�ดเก1บข้�อมี�ลั โดยใชุ�ตัารางข้�อมี�ลั ทุ�&เร�ยกว�ามี$ตั$

( Dimension )

2. เป�นข้�อมี�ลัตั�วแปรชุ�ดประเภทุหน%&งทุ�&มี�ลั�กษณะเป�นข้�อมี�ลัประเภทุข้�อความี ประกอบด�วยอ�กข้ระมีากกว�า 1 ตั�ว ใชุ�เน�)อทุ�& 1 อ�กข้ระตั�อ 1 ไบตั�

3. การน-าข้�อมี�ลัลังตัารางข้�อมี�ลั การอ�านค�าข้�อมี�ลัจัากตัารางข้�อมี�ลั การก-าหนดค�าข้�อมี�ลัลังตัารางข้�อมี�ลั การประมีวลัผลัโดยใชุ�ข้�อมี�ลัจัาก

Page 24: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

ตั�วแปรชุ�ดพื้�)นทุ�&ทุ�&ตั�องการ4. เป�นข้�อมี�ลัโครงสร�างชุน$ดหน%&ง ประกอบไปด�วยข้�อมี�ลัชุน$ดพื้�)นฐาน

หลัายๆตั�ว รวมีกลั��มีก�น ข้�อมี�ลัแตั�ลัะตั�วน�)นเร�ยกว�า อ�ลั�เมีนตั�

6.คำ!าสิ��งก!าหนดล�กษณะตั�วแปรชุ ดหมายถ/งอัะไร

1. การอ�างอ$งหน�วยความีจั-าก�บตั�วแปรชุ�ดอ�&นๆ

2.การก-าหนดว$ธี�การจั�ดเก1บข้�อมี�ลั โดยใชุ�ตัารางข้�อมี�ลั

3.การเข้�ยนค-าส�&งในโปรแกรมีให�จั�ดเก1บค�าข้�อมี�ลัเฉพื้าะกลั��มีอ�กข้ระ

4.การป5อนข้�อมี�ลัจั�ดเก1บลังพื้�)นทุ�&หน�วยความีจั-าตั�วแปรชุ�ด

7.ตั�วแปรแบบกล �มอั�กขระเป6นข�อัม�ลตั�วแปรชุ ดประเภทหน/�งท��ม�ล�กษณะเป6นข�อัม�ลประเภทใด

1. ประเภทุร�ปภาพื้

2.ประเภทุศ$ลัปะ

3.ประเภทุข้�อความี

4.ประเภทุสวยงามี

Page 25: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

8.การอั�างอั�งข�อัม�ลในตัารางข�อัม�ลตั�วแปรชุ ดกล �มอั�กขระใชุ�คำ!าสิ��งอัะไร คำวบคำ มการวนซ้ำ!+า

1. for

2.love

3. type

4. size

9. value list คำ*อัอัะไร

1. ชุน$ดข้�อมี�ลัพื้�)นฐาน 2.ชุ�&อตั�วแปรแบบกลั��มีอ�กข้ระ

3.จั-านวนตัารางข้�อมี�ลั

4.ข้�อมี�ลัทุ�&ก-าหนดให�ตั�วแปรชุ�ด หากมี�หลัายค�า ให�ใชุ� , ค�&น

10.การอั�านคำ�าข�อัม�ลจำากพ*+นท��หน�วยคำวามจำ!าขอังตั�วแปรชุ ดมาแสิดงผัล เพ*�อัคำวามสิะดวกรวดเร�วในการคำวบคำ มอั�านคำ�าตั�อังใชุ�คำ!าสิ��งอัะไร

1.จัากค-าส�&ง printf

2. ด�วยการใชุ�ค-าส�&งควบค�มีวนซ้ำ-)า

3. ค-าส�&ง score

4. ค-าส�&งเจั�านาย

25

Page 26: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

เฉลัย 1 ตัอบ 4

2 ตัอบ 2

3 ตัอบ 2

4 ตัอบ 1

5 ตัอบ 3

6 ตัอบ 2

7 ตัอบ 3

8 ตัอบ 1

9 ตัอบ 4

10 ตัอบ 2

26

Page 27: บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขร

สิมาชุ�ก1.นายจั$ตัรเทุพื้ ส�ก�ลัธีนาศร เลัข้ทุ�& 5

2. นายธีนว�ส อ�อนเอ�&ยมี เลัข้ทุ�& 6

3. นางสาว จั$ตัรทุ$พื้ย� ส�ก�ลัธีนาศร เลัข้ทุ�& 23

4. นางสาว ธีน�ชุก�ญ พื้�ลัผลั เลัข้ทุ�& 24

5. นางสาว พื้�ชุรวลั�ย ด�ประชุา เลัข้ทุ�& 25

6. นางสาว ภ�ทุราพื้ร เนตัรสว�าง เลัข้ทุ�& 26

7. นางสาว ศศ$ว$มีลั สมีบ�รณ�ศ$ร$ เลัข้ทุ�& 27

มี.6/2