ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยPidok Lam ได้เปลี่ยน 9 ปีที่แล้ว
1
Array ธนวัฒน์ แซ่ เอียบ
2
The concept of array อาเรย์ : กลุ่มของข้อมูลที่มีชนิดเดียวกันและถูก จัดเก็บเรียงลำดับต่อเนื่องกัน ตัวแปร x สามารถจัดเก็บค่ามากกว่า 1 ค่าได้ แทนที่จะจัดเก็บเพียงค่าเดียว สมาชิกของอาเรย์สามารถอ้างอิงได้ โดยใช้ตัว เลขที่เรียกว่า index หรือ subscript เช่น – คณิตศาสตร์ : ตัวแปรที่ถูกระบุ subscript เช่น x i หมายความว่า อ้างอิงถึงสมาชิกตัวที่ i ในกลุ่มของ x – ภาษา C มีความหมายเท่ากับ x[i]
3
Declaring an array การประกาศตัวแปรอาเรย์ 1. กำหนด type ของสมาชิกที่จะจัดเก็บในอาเรย์ เช่น float, char, int 2. กำหนดขนาดสูงสุดของสมาชิกที่อาเรย์สามารถ จัดเก็บได้ – ภาษา C จำเป็นต้องระบุเพื่อใช้กำหนดพื้นที่ หน่วยความจำสำหรับอาเรย์แต่ละตัวโดยเฉพาะ – ค่านี้ต้องเป็นค่าคงที่จำนวนเต็มเท่านั้น 3. ช่วงของ index ที่ถูกต้องของอาเรย์ – สมาชิกตัวแรกมี index เท่ากับ ? – สมาชิกตัวสุดท้ายมี index เท่ากับ ? ? ภาษา C จะเกิดอะไรขึ้นถ้าอ้าง index เกินขอบเขตช่วง ของ index
4
Arrays - Example int values[10] ประกาศอาเรย์ขนาด 10 สมาชิก แต่ละสมาชิกมีชนิด int ? ถ้าต้องการประกาศขนาด สมาชิกเป็นค่าคงที่จะต้อง ประกาศอย่างไร ? ภาษา C เกิดอะไรขึ้นกับ หน่วยความจำจาก statement ต่อไปนี้ values[0]=5; value[9]=7; values[10]=3; values[-1]=6; value[10] value[4] value[2] value[0] value[1] value[3] value[5] value[8] value[6] value[9] value[7] value[11] จงลากเส้นชี้ตำแหน่งให้ ถูกต้อง
5
Arrays - Example #include #define N 6 int main (void) { int values[N]; int index; for ( index = 0; index < N; ++index ) { printf(“Enter value of element #%i \n”,index); scanf(“%i”, &values[index]); } for ( index = 0; index < N; ++index ) printf ("values[%i] = %i\n", index, values[index]); return 0; }
6
What goes wrong if an index goes out of range ? #include #define NA 4 #define NB 7 int main (void) { int b[NB],a[NA]; int index; for ( index = 0; index < NB; ++index ) b[index]=10+index; for ( index = 0; index < NA+2; ++index ) a[index]=index; for ( index = 0; index < NA+2; ++index ) printf ("a[%i] = %i ", index, a[index]); printf("\n"); for ( index = 0; index < NB; ++index ) printf ("b[%i] = %i ", index, b[index]); printf("\n"); return 0; }
7
Exercise กำหนดข้อทั้งหมด 5 ข้อเพื่อสอบถามคน 20 คน ( แต่ละคนจะสามารถเลือกได้เพียงหนึ่งข้อ ) จง เขียนโปรแกรมภาษา c เพื่อรับข้อมูลที่คนทั้ง 20 คนเลือก และแสดงว่าแต่ละข้อมีคนเลือกกี่ คน
8
Initializing arrays int counters[5] = { 0, 0, 0, 0, 0 }; char letters[5] = { 'a', 'b', 'c', 'd', 'e' }; float sample_data[500] = { 100.0, 300.0, 500.5 }; การกำหนดแบบนี้ ในภาษา c ไม่จำเป็นต้องกำหนด ขนาดสมาชิกก็ได้ เนื่องจากภาษา c มีฟังก์ชันจัดการ เรื่องนี้ให้ เช่น int counters[] = { 0, 0, 0, 0, 0 }; char letters[] = { 'a', 'b', 'c', 'd', 'e' }; float sample_data[] = { 100.0, 300.0, 500.5 };
9
Character arrays #include int main (void) { char word[] = { 'a', 'p', 'p', 'l', 'e'}; int i; for ( i = 0; i < ……; ++i ) printf ("%c", word[i]); printf ("\n"); return 0; } จงปรับลูปของการเริ่มต้นที่อักษรแรกจนถึงตัวอักษร สุดท้ายเป็น เริ่มที่ตัวอักษรที่สองจนกระทั่งพบอักขระบอก การสิ้นสุด string
10
Multidimensional arrays C language allows arrays of any number of dimensions Two-dimensional array: matrix int M[4][5]; // matrix, 4 rows, 5 columns M[i][j] – element at row i, column j int M[4][5] = { { 10, 5, -3, 17, 82 }, { 9, 0, 0, 8, -7 }, { 32, 20, 1, 0, 14 }, { 0, 0, 8, 7, 6 } }; int M[4][5] = { 10, 5, -3, 17, 82, 9, 0, 0, 8, -7, 32,20, 1, 0, 14, 0, 0, 8, 7, 6 };
11
ที่มา conf.dr.ing. Ioana Sora : University of Timisoara, Romania
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.