1 / 61

C Programming

By Mr. Sanae Sukprung. C Programming. คำอธิบายรายวิชา. หลักการเขียนโปรแกรมภาษาซี ชนิดของข้อมูล คำสั่งควบคุม คำสั่งลูป ฟังก์ชั่น แมคโคร พอยต์เตอร์ อะเรย์ สตริง การจัดการแฟ้มข้อมูล ข้อมูลแบบโครงสร้าง และการเขียนโปรแกรมภาษาซีกับงานประยุกต์. รู้จักกับภาษา C.

luna
Download Presentation

C Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. By Mr. Sanae Sukprung C Programming

  2. คำอธิบายรายวิชา หลักการเขียนโปรแกรมภาษาซี ชนิดของข้อมูล คำสั่งควบคุม คำสั่งลูป ฟังก์ชั่น แมคโคร พอยต์เตอร์ อะเรย์ สตริง การจัดการแฟ้มข้อมูล ข้อมูลแบบโครงสร้าง และการเขียนโปรแกรมภาษาซีกับงานประยุกต์ C Programing

  3. รู้จักกับภาษา C ภาษา C เป็นภาษาที่เก่าแก่ ซึ่งถูกพัฒนาเพื่อให้เป็นภาษาสำหรับการสร้างระบบปฏิบัติการ UNIX เพราะของเดิมนั้นเขียนด้วยภาษา Assembly ซึ่งเป็นภาษาที่ยึดติดกับ H/W จึงทำให้ย้ายระบบปฏิบัติการไปทำงานกับเครื่องอื่น ๆ เป็นเรื่องที่เป็นไปไม่ได้ C Programing

  4. ดังนั้น ภาษา C จึงเป็นภาษาที่ไม่ยึดติดกับ H/W และในปัจจุบันยังไม่ยึดติดกับการสร้างระบบปฏิบัติการเท่านั้น แต่ยังนำไปสร้างโปรแกรมเพื่องานทุกประเภทได้ C Programing

  5. จุดเด่นของภาษา C • เป็นภาษาที่มีการกำหนดมาตรฐานสำหรับเครื่องคอมพิวเตอร์ทุกรุ่น • เป็นภาษาที่ระบบปฏิบัติการทุกตัวยอมรับ • เป็นภาษาที่มีโครงสร้างที่ดี และความชัดเจนของเครื่องหมายสำหรับดำเนินการ C Programing

  6. สามารถเขียนคำสั่งภาษา C เพื่อควบคุมการทำงานของอุปกรณ์ H/W บางส่วนได้ • มี Function สำเร็จรูป สำหรับงานประเภทต่าง ๆ ให้เลือกใช้มากมาย C Programing

  7. การสั่งงานคอมพิวเตอร์ด้วยภาษาโปรแกรมการสั่งงานคอมพิวเตอร์ด้วยภาษาโปรแกรม MUL R1, D STO R1, TEMP1 LOD R1 ,B ADD R1,TEMP1 11001010 10011001 00100110 11001011 01001101 10001101 01101100 11000101 ตัวกลางสำหรับแปลภาษา ไปเป็นภาษาเครื่อง C Programing

  8. การแบ่งระดับตามลักษณะและการทำงานการแบ่งระดับตามลักษณะและการทำงาน 1. ภาษาระดับต่ำ (LOW LEVEL Language)เป็นภาษที่ใกล้เคียงกับภาษาเครื่องมากที่สุด สามารถเขียนคำสั่งเพื่อติดต่อสั่งงานกับอุปกรณ์ H/W ได้โดยตรง ซึ่งได้แก่ ภาษา Assambly ตัวอย่าง ของ Assambly MUL R1, D STO R1, TEMP1 LOD R1 ,B ADD R1,TEMP1 C Programing

  9. การแบ่งระดับตามลักษณะ และการทำงาน (ต่อ) 2. ภาษาระดับสูง (High Level Language) เป็นภาษาที่ใกล้เคียงกับภาษามนุษย์มากที่สุด คำสั่งต่าง ๆ จึงมักเป็นภาษาอังกฤษ ทำให้จดจำและเขียนได้ง่าย เช่น ภาษา Pascal, Cobol, Fortran หรือ Basic เป็นต้น C Programing

  10. รูปแบบการเขียนคำสั่งภาษา C • คำสั่งในภาษา C จะต้องเขียนด้วยตัวอักษรพิมพ์เล็ก • ทุกคำสั่งต้องลงท้ายด้วย ; • สามารถเขียนคำสั่งได้อย่างอิสระ เช่น int a = 5; int b = 10; printf (Sum = %d\n”, a+b); C Programing

  11. การแบ่งระดับตามลักษณะ (ต่อ) 3. ภาษาระดับกลาง (Middle Level language) ภาษา C ถูกพัฒนาขึ้นโดยเอาข้อดีและข้อเสียของ 2 ระดับมาใช้ คือ คำสั่งของภาษา C เป็นคำสั่งที่มีความหมายใกล้เคียงกับภาษามนุษย์ และยังสามารถติดต่อกับ H/W ได้รวดเร็ว ดังนั้นภาษา C จึงถูกจัดให้เป็นภาษาระดับกลาง C Programing

  12. ตัวอย่าง ของ ภาษา C #Include (stdio.h) หรือ “stdio.h” void main() { printf(“Hello World\n”); } C Programing

  13. Hello Link หลักในการแปลภาษา แบ่งได้ 2 วิธี คือ 1. แปลทีละคำสั่ง ตัวแปลลักษณะนี้จะเรียกว่า Interpreterโดยจะทำงานแบบเป็นคำสั่งต่อคำสั่ง นั่นคือจะอ่านคำสั่งจากโปรแกรมมา 1 คำสั่ง และทำงานตามคำสั่งนั้นทันที Print “Hello Link \n ”; print “How are you?”; Interpreter C Programing

  14. หลักในการแปลภาษา (ต่อ) 2. แปลทีเดียวตั้งแต่ต้นจนจบ ตัวแปลลักษณะนี้จะเรียกว่า Compiler หลักการทำงานเริ่มจากคอมไพล์เลอร์จะทำการตรวจสอบคำสั่งทั้งหมดของโปรแกรม เพื่อดูว่ามีส่วนใดผิดจากหลักการของภาษานั้นหรือไม่ ถ้าไม่พบข้อผิดพลาดคอมไพเลอร์จะทำการแปลคำสั่งทั้งหมดในโปรแกรมให้เป็นภาษาเครื่องแล้วจึงทำงาน Hello Link How are You Print “Hello Link \n ”; print “How are you?”; Compiler C Programing

  15. ฟังก์ชั่นจากไลบรารี ในภาษา C ไฟล์ชื่อ Test.c #Include (stdio.h) main() { printf(“Hello World\n”); } Object File .obj test.obj Binary File .exe test.exe Linker C Compoler คอมไพล์ ลิงค์ ขั้นตอนการทำงานของ ภาษา C C Programing

  16. ภาษา C เบื้องต้น

  17. โครงสร้างของภาษา C จะแบ่งออกเป็น 2 ส่วนดังนี้ ส่วนหัวของโปรแกรมซึ่งเป็นส่วนของ การกำหนดค่าเริ่มต้น และประกาศตัวแปร 1 ส่วนของตัวโปรแกรมซึ่งเริ่มจาก void Main() ซึ่งอาจจะมีการเรียกใช้ Function อื่น ๆ ก็ได้ 2 C Programing

  18. ตัวอย่าง การเขียนโปรแกรมภาษา C #include (stdio.h) void main() { printf(“Hello World\n”); } Head Body C Programing

  19. ส่วนหัวของโปรแกรม ส่วนหัวของโปรแกรมจะเริ่มต้นตั้งแต่บรรทัดแรกของโปรแกรมจนมาสิ้นสุดที่บรรทัดก่อน Main() จะแบ่งออกเป็น 2 ส่วนดังนี้ 1. คำสั่งพิเศษ (Preprocessor Directive) 2. การประกาศตัวแปร (Declaration) C Programing

  20. #include (stdio.h) int x =4; void main() { printf(“Hello World\n”); } 1 2 C Programing

  21. Preprocessor directive เป็นคำสั่งรูปแบบหนึ่งของภาษา C ที่มีความพิเศษ โดยในขั้นตอนการแปลความหมายของโปรแกรม ถ้าตัวแปลภาษา C ตรวจพบว่ามีการใช้ Preprocessor ภายในโปรแกรม ก็จะถูกแปลความหมายเป็นลำดับแรกก่อนคำสั่งอื่น ๆ รูปแบบของการเขียน Preprocessor จะต้องขึ้นต้นเครื่องหมาย # แต่ไม่ต้องลงท้ายด้วยเครื่อง ; เหมือนคำสั่งอื่น ๆ ทั่วไป C Programing

  22. #Include #Define #Error #if #Endfi #Elid #Else #ifdef #ifndef #undef #Line #Pragma Preprocessor directive (ต่อ) คำสั่งที่จัดอยู่ในกลุ่มของ Preprocessor Directive C Programing

  23. การประกาศตัวแปร #include <Stdio.h> int a= 5; int b= 10; int c; main() { c= a+b; printf (“sum = %d\n”, c); } ตัวแปรจำนวนเต็ม หาผลบวก แสดงผลบวก C Programing

  24. รูปแบบการเขียนคำสั่งภาษา C • คำสั่งในภาษา C จะต้องเขียนด้วยตัวอักษรพิมพ์เล็ก • ทุกคำสั่งต้องลงท้ายด้วย ; • สามารถเขียนคำสั่งได้อย่างอิสระ เช่น int a = 5; int b = 10; printf (Sum = %d\n”, a+b); C Programing

  25. คำบรรยายแทรก (Comment) การเขียนคำบรรยายแทรก หรือที่เรียกว่า comment ไว้ภายในโปรแกรมจะช่วยเพิ่มความเข้าใจของตัวเรา หรือเพื่อให้คนที่มาอ่านโปรแกรมเข้าใจในสิ่งที่เราเขียนได้มากขึ้น ซึ่ง รูปแบบจะใช้เครื่องหมาย /* */ ครอบคำบรรยายที่เราต้องการแทรกลงไปในโปรแกรม C Programing

  26. #include (stdio.h) main() { printf (“Hello World\n”); /* Display message Hello world to the Monitor */ } C Programing

  27. ข้อมูลและตัวแปรในภาษา C

  28. ชนิดของข้อมูลในภาษา C • ข้อมูลเลขจำนวนเต็ม (Integer) • ข้อมูลเลขทศนิยม (Float) • ข้อมูลชนิดเลขฐานแปด (Octal) • ข้อมูลชนิดเลขฐานสิบหก (Hexadecimal) • ข้อมูลชนิดตัวอักขระ (Character) • ข้อมูลชนิดข้อความ (String) C Programing

  29. ตัวแปรและหน้าที่ของตัวแปรตัวแปรและหน้าที่ของตัวแปร ตัวแปร (Variable) คือ การจองที่เก็บข้อมูลในหน่วยความจำหลัก (RAM) ของเครื่องคอมพิวเตอร์ พร้อมกับกำหนดชื่อเรียกแทนหน่วยความจำในตำแหน่งนั้น อย่างเช่น ถ้าเราสร้างตัวแปรขึ้นมา 1 ตัวโดยใช้ชื่อ num สำหรับเก็บค่าของตัวเลข 16 เมื่อต้องการนำค่า 16 มาใช้ เราก็เพียงแต่เรียกชื่อ num ซึ่งภาษา C จะแปลความหมายได้ถูกต้องว่ามีค่าเท่ากับ 16 C Programing

  30. ชนิดของตัวแปรในภาษา C สามารถแบ่งได้ 2 ประเภทใหญ่ ๆ คือ 1. ตัวแปรแบบพื้นฐาน (Scalar) ซึ่งหมายถึงที่เก็บข้อมูลได้เพียงค่าเดียวเช่น C Programing

  31. C Programing

  32. รูปแบบการประกาศตัวแปรรูปแบบการประกาศตัวแปร Type variable; type :ชนิดของตัวแปรที่จะสร้างขึ้น variable :ชื่อของตัวแปรที่ต้องการจะใช้ int num; float y; char c; double salary; ตัวอย่าง C Programing

  33. รูปแบบการประกาศตัวแปร (ต่อ) Type variable = value; long million = 1000000; int oct = 0234; int hex = 0x45; float temp = 15.236; double stat = 1.25e-02; char ch =‘#’; ตัวอย่าง C Programing

  34. รูปแบบการประกาศตัวแปร (ต่อ) Type variable-1, variable-2,... variable-n; type :ชนิดของตัวแปรที่จะสร้างขึ้น variable-1... Variable-n :ชื่อของตัวแปรที่ต้องการจะใช้ int num1,num2,num3; float point1, point2,point3 = 12.00; char a,b = ‘B’, c,d =‘D’; ตัวอย่าง C Programing

  35. หลักการตั้งชื่อตัวแปรหลักการตั้งชื่อตัวแปร • ต้องขึ้นต้นด้วยตัวอักษร A-Z หรือ a-z หรือเครื่องหมาย _ เท่านั้น • ภายในชื่อตัวแปรให้ใช้ตัวอักษร A-Z หรือ a-z หรือ 0-9 หรือ _ • ห้ามเว้นช่องว่างภายในตัวแปร หรือใช้สัญลักษณ์นอกเหนือจากข้อ 2 • การใช้ตัวอักษรตัวใหญ่ และตัวเล็ก มีความแตกต่างกัน • ห้ามตั้งชื่อตัวแปรซ้ำกับคำสงวน (Reserved Word) C Programing

  36. คำสงวน (Reserved Word) auto break case char const continue default do double else if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while C Programing

  37. ตัวอย่างการตั้งชื่อตัวแปรตัวอย่างการตั้งชื่อตัวแปร class_room hi-tech 9number _hello123 age# right! last name ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง C Programing

  38. ตัวแปรสำหรับข้อมูลชนิดข้อความตัวแปรสำหรับข้อมูลชนิดข้อความ char variable[n]; n : คือจำนวนของตัวแปรชนิดอักขระ (Char) ที่จะสร้างขึ้น โดยถ้าข้อความมีอักขระทั้งหมด 10 ตัว จะต้องใส่จำนวนเป็น 11 เนื่องจากภาษา C มีข้อกำหนดว่าจะเก็บข้อมูลชนิดข้อความ ตัวสุดท้ายต้องเป็นอักขระว่าง ซึ่งจะเขียนแทนด้วย \0 เพื่อบอกให้รู้ว่าเป็นข้อความ Variable :ชื่อของตัวแปร โดยต้องตั้งชื่อให้ถูกต้องตามหลักการตั้งชื่อ char name [10]; C Programing

  39. คำสั่งที่ใช้ในการแสดงผล และการรับข้อมูล printf() รูปแบบ printf (“ control”,value); C Programing

  40. control : ส่วนที่ใช้ควบคุมการแสดงผล ซึ่งมีอยู่ 3 แบบด้วยกัน คือ ข้อความธรรมดา รหัสควบคุมรูปแบบ (เช่น %d, %f) และอักขระควบคุมการแสดงผล(เช่น \n) โดยส่วนที่ใช้ควบคุมการแสดงผลเหล่านี้จะต้องเขียนไว้ภายใน “ “ value:คือ ค่าของเครื่องหมาย นิพจน์ หรือมาโครที่ต้องการแสดงผล โดยถ้ามีมากกว่าหนึ่งตัวให้ใช้เครื่องหมาย , (comma) คั่นระหว่างแต่ละตัว C Programing

  41. ตัวอย่าง /*Ex1 */ #include <stdio.h> void main() { clrscr(); printf(“Nice to meet you!”); getch() } C Programing

  42. ตัวอย่าง /*Ex2 */ #include (stdio.h) int num = 32; void main() { clrscr(); printf (num); } C Programing

  43. รหัสรูปแบบ (Format Code) • %d สำหรับการแสดงผลตัวเลขจำนวนเต็ม • %u สำหรับการแสดงผลตัวเลขจำนวนเต็มบวก • %o สำหรับการแสดงผลออกมาในรูปแบบของเลขฐานแปด • %x สำหรับการแสดงผลออกมาในรูปแบบของเลขฐานสิบหก • %f สำหรับการแสดงผลตัวเลขทศนิยม • %e สำหรับการแสดงผลตัวเลขทศนิยมออกมาในรูปแบบ E • %c สำหรับแสดงผลอักขระ 1 ตัว • %s สำหรับแสดงผลข้อความ • %p สำหรับการแสดงผลตัวชี้ตำแหน่ง C Programing

  44. ตัวอย่าง /* EX 3 */ #intclude <Stdio.h> int x1 = 43, x2 = 0x77, x3 = 0573; float y1 = -764.512, y2 = 1.25e02; char z = ‘A’; char name[11] = “Sriwattana” void main() { clrscr(); printf(“%d“, x1); printf (“%x %o “,x2, x3); printf (“%f %e “, y1,y2); printf (“%c %s “, z, name); } C Programing

  45. อักขระควบคุมการแสดงผลอักขระควบคุมการแสดงผล • \n ขึ้นบรรทัดใหม่ • \t เว้นช่องว่างเป็นระยะ 1 Tab (6 ตัวอักษร) • \r กำหนดให้ Cursor ไปอยู่ต้นบรรทัด • \f เว้นช่องว่างเป็นระยะ 1 หน้าจอ • \b ลบอักขระตัวท้ายสุดออก 1 ตัว C Programing

  46. ตัวอย่าง #include <stdio.n> #define PUBLISH “infopress” int x1 =14, x2 = 5; main() { printf (“This is the book from %s\n”, PUBLISH); printf(“Sum of %d + %d =\t%d\n”,x1, x2, x1+x2); } C Programing

  47. รับข้อมูลจาก Keyboard ด้วย scanf() Scanf ( ) รูปแบบ scanf (“ format “ , &variable); C Programing

  48. format : เป็นการกำหนดรูปแบบ ของข้อมูลที่จะรับเข้ามา โดยจะใช้รหัสรูปแบบเหมือนกับ printf () variable :ตัวแปรที่ใช้สำหรับรับข้อมูลเข้ามา โดยจะต้องเขียนนำหน้าด้วยเครื่องหมาย & ยกเว้นตัวแปรที่จะเก็บข้อความเท่านั้น C Programing

  49. ตัวอย่าง /* EX 4 */ #include <stdio.h> int age; main () { clrscr( ); printf (“How Old are you?”); scanf (“%d”,&age); printf (“You are %d years old. \n”,age); } C Programing

  50. แสดงผลทีละอักขระด้วย putchar() รูปแบบ putchar(char); char : เป็นตัวแปรชนิด char หรืออักขระที่เขียนภายในเครื่องหมาย ‘ ‘ C Programing

More Related