ภาษาซี
น.ส.ธมลวรรณ โหมดบรุ ี 101 (6) น.ส.สวรา เรอื งประโคน 127 (26) น.ส.พนิ ตนั นท์ แซต่ งั้ 133 (38) น.ส.ฐาปนี แดงสกลุ 135 (40) ระดบั ชนั้ ปวช.1/3 แผนกคอมพิวเตอรธ์ ุรกจิ เสนอ วลิ าวลั ย์ วชั ระโรทยั วทิ ยาลัยเทคนิ คปทมุ ธานี
อาจารย์ผูส้ อน รายวชิ าหลักการเขียนโปรแกรม รหัสวชิ า 20204-2102 อาจารย์ วลิ าวัลย์ วัชโรทัย ตาํ แหน่ง ครูวทิ ยฐานะครู ชํานาญการ แผนก คอมพิวเตอร์ธุรกิจ วิทยาลัยเทคนิคปทมุ ธานี
ชื่อ น.ส.ธมลวรรณ โหมดบรุ ี ชือเลน่ เกด อายุ 16 ส่วนสงู 165 นาหนัก 50 ท่ีอยู่ 64/11 ต.บา้ นมา้ อ.บาง ไทร จ.พระนคศรอี ยธุ ยาเบอร์ 095-128-3694 เฟส เกด จ่ า๋ า
ชื่อ น.ส.สวรา เรอื งประคน ชือเล่น อัม้ อายุ 16 ส่วนสงู 169 นาหนัก 87 ท่ีอยู่ 10/187 ต.สวนพรกิ ไทย อ.เมอื ง จ.ปทุมธานี เบอร์ 095-289-0310 เฟส อา ยอง
ช่ือ น.ส.พนิตนันท์ แซ่ตงั้ ชือเล่น แบม อายุ 16 ส่วนสูง 160 นาหนัก 60 ท่ีอยู่ 100/37 ต.บางแขยง อ.เมืองจ.ปทุมธานี เบอร์ 063-801-5410 เฟส Phanitnan Saetang
ช่ือ น.ส.ฐาปนี แดงสกลุ ช่ือเล่น หนุงหนิง อายุ 16 ปี ส่วนสูง 169 ซม. นาหนัก 50 กก. ท่อี ยู่ 19/121 ถ.ปทุม-กรุงเทพ ต.บางปรอก อ.เมือง จ.ปทมุ ธานี เบอร์ 093 571 0623 เฟส นะโมตสั สะ.
ชนิ ดของตวั ซี ผจู้ ดั ทําจัดข้ึนเพื่อเป็นส่วนหน่ึ งของการศึกษา เรอื่ งตา่ งของชนิ ดตัวซี เชน่ ตวั แปรชนิ ดของขอ้ ความ ข้อมลู ของ ตัวซี เพื่อพัฒนาการเรยี นรู้ ความเข้าใจงา่ ยเกย่ี วกับการศึกษาวชิ า หลกั การเขยี นโปรแกรม และจดั ข้นึ ให้นั กศึกษาและผสู้ นใจ ค้นควา้ มคี วามรูแ้ ละความเข้าใจเกีย่ วกบั ชนิ ดของตัวซี คณะผู้จัดทําโดย น.ส.ธมลวรรณ โหมดบรุ ี น.ส.สวรา เรืองประโคน น.ส.พนติ นนั ท์ แซ่ตงั น.ส.ฐาปนี แดงสกลุ 26/2/62
สารบัญ หนา้ 10 เรื่อง 11-12 รปู แบบการประกาศตวั แปร 13-14 ตวั แปรชนดิ ขอ้ ความ 14 ชนดิ ของขอ้ มลู 15-16 คาํ สงั่ พืนฐานการรบั และแสดงผลขอ้ มลู 17-18 รหสั ควบคมุ รปู แบบการแสดงผลคา่ ของตวั แปรออกทางหนา้ จอ 19-20 คาํ สงั่ Do-while loop 21-22 คาํ สงั่ For loop 23 คาํ สงั่ IF8 24-26 คาํ สงั่ while loop 26-27 ภาษา C 28 วิวฒั นาการของภาษาซี บรรณานกุ รม
รู ปแบบการประกาศตัวแปร type variable-name; โดย type คือชนดิ ของตวั แปร variable-name คือชอื่ ของตวั แปร (ควรตงั ชอ่ื ใหม้ คี วามหมายสอดคลอ้ งกบั การใชง้ านและจาํ งา่ ย) ตวั อยา่ งการประกาศตวั แปรแบบตา่ ง ๆ - int num; /*ประกาศตวั แปรชนดิ จาํ นวนเต็ม ชอ่ื num*/float x; -char grade, sex; /*ประกาศตวั แปรชนดิ อกั ขระ ชอ่ื grade และ sex (ประกาศพรอ้ มกนั ในบรรทดั เดยี ว)*/ -float temp = 123.45; /*ประกาศตวั แปรชนดิ เลขทศนยิ มพรอ้ มกาํ หนดคา่ 123.45*/ -char c = \"A\", t = \"B\"; /*ประกาศตวั แปรชนดิ อกั ขระสองตวั พรอ้ มกาํ หนดคา่ ใหแ้ ตล่ ะตวั */ -int oct = 0555; /*ประกาศตวั แปรชนดิ จาํ นวนเต็มชอ่ื num พรอ้ มกาํ หนดคา่ คือ 555 (เป็ นเลขฐานแปด เพราะมี 0 นาํ หนา้ )*/ -int hex = 0x88; /*ประกาศตวั แปรชนดิ จาํ นวนเต็มชอ่ื hex พรอ้ มกาํ หนดคา่ คือ 88 (เป็ นเลขฐาน 16 เพราะมี 0x นาํ หนา้ )*/
ตวั แปรชนิดข้อความ (string) ถา้ เราตอ้ งการเก็บขอ้ ความ \"C programming language\" ไวใ้ นตวั แปร จะทาํ ไดอ้ ยา่ งไร? ท่ีผา่ นมาเราทราบวา่ เราสามารถเก็บขอ้ มลู ชนดิ ตวั อกั ขระไวใ้ นตวั แปรชนดิ char ได้ แตต่ วั แปร ชนดิ char นนั สามารถเก็บตวั อกั ขระไดเ้ พียงตวั เดยี วเทา่ นนั ไมส่ ามารถเก็บทงั ขอ้ ความได้ แลว้ เราจะแกป้ ัญหา ไดอ้ ยา่ งไร? หากพิจาณาใหด้ ี ขอ้ ความดงั กลา่ วประกอบดว้ ยตวั อกั ขระ (ตวั อกั ษร+สญั ลกั ษณ)์ หลายๆ ตวั เรียงตอ่ กนั เป็ นสาย ซ่ึงเป็ นลกั ษณะของตวั แปรแบบ array (จะไดก้ ลา่ วภายหลงั ) การประกาศตวั แปรแบบ array เพ่ือเก็บขอ้ มลู ดงั กลา่ วสามารถทาํ ไดด้ งั นี type variable-name[size]; โดย size คือขนาดของขอ้ ความ+1 โดยขนาดทเ่ี พิ่มขนึ เพราะตอ้ งเก็บอกั ขระสดุ ทา้ ยของขอ้ ความเป็ น อกั ขระ \\0 หรือ NULL เพ่ือบอกวา่ สนิ สดุ ขอ้ ความแลว้
ตวั อยา่ งการประกาศตวั แปรแบบ array เพ่ือเกบ็ ข้อความ \"C programming language\" (22 ตวั อกั ษร) ทาํ ไดห้ ลายวธิ ดี ังน้ี char[23] text = \"C programming language\"; /*กาํ หนดขนาดเพ่ิมข้ึน 1 ตัว สําหรบั เก็บค่า \\0 หรอื NULL ในตาํ แหน่ ง สดุ ทา้ ย*/ char[23] text = {'C',' ','p','r','o','g','r','a','m','m','i','n','g',' ','l','a','n','g','u','a','g','e','\\0'}; /*กําหนดขนาดเพ่ิมข้นึ 1 ตวั สําหรบั เกบ็ ค่า \\0 หรอื NULL ในตาํ แหน่ ง สุดทา้ ย*/ char[] text = \"C programming language\"; /*ถา้ ไมก่ าํ หนดขนาดของ array แลว้ ตัวแปรภาษาซจี ะกาํ หนดให้โดยมี ขนาดเทา่ กบั ขนาดขอ้ ความ+1*/
ชนดิ ของขอ้ มลู (data type) ในการเขยี นโปรแกรมหนง่ึ ๆ จะมขี อ้ มลู ตา่ งๆ เขา้ มาเกย่ี วขอ้ งเชน่ การนบั จาํ นวนรอบ (loop) ของการทาํ งานโดยใชข้ อ้ มลู ชนดิ จาํ นวนเต็ม หรือการแสดงขอ้ ความ โดยใชข้ อ้ มลู ชนดิ ตวั อกั ษร จะเห็นวา่ ขอ้ มลู ตา่ งๆ ถกู แบง่ ออกเป็ นหลายชนดิ ตามจดุ ประสงคข์ องการ ใชง้ าน นอกจากนขี อ้ มลู แตล่ ะชนดิ ยงั ใชเ้ นอื ท่หี นว่ ยความจาํ (memory) ไมเ่ ทา่ กนั จึงมกี ารแบง่ ชนดิ ของ ขอ้ มลู ดงั แสดงในตารางดา้ นลา่ ง ตวั แปร (variable) เนอ่ื งจากขอ้ มลู ถกู เก็บอยใู่ นหนว่ ยความจาํ การอา้ งถึงตาํ แหนง่ ของ ขอ้ มลู นี จึงมคี วามซบั ซอ้ น ไมส่ ะดวกตอ่ การเขยี นโปรแกรม จึงมกี ารเรียกหนว่ ยความจาํ ใน ตาํ แหนง่ ทส่ี นใจผา่ นตวั แปร การประกาศตวั แปร (variable declaration) คือการจองเนอื ที่ในหนว่ ยความจาํ สาํ หรบั เก็บคา่ บางอยา่ ง พรอ้ มทงั กาํ หนดชอ่ื เรียกแทนหนว่ ยความจาํ ในตาํ แหนง่ นนั เพื่อใหผ้ เู้ ขยี นโปรแกรมมคี วาม สะดวกในการเขา้ ถึง คา่ ท่ีเก็บอยใู่ นหนว่ ยความจาํ ดงั กลา่ ว
ชนิ ดของ ขนาด ขอบเขต ข้อมูลท่เี ก็บ ตวั แปร (bits) -128 ถงึ 127 ขอ้ มูลชนิ ดอักขระ ใชเ้ นื้ อท่ี 1 byte char 8 0 ถงึ 255 ข้อมูลชนิ ดอกั ขระ ไม่คิดเครอื่ งหมาย ขอ้ มลู ชนิ ดจาํ นวนเต็ม ใชเ้ นื้ อท่ี 2 byte unsigned char 8 ขอ้ มลู ชนิ ดจาํ นวนเตม็ ไมค่ ิดเครอ่ื งหมาย ขอ้ มูลชนิ ดจํานวนเตม็ แบบสั้น ใชเ้ น้ื อท่ี 1 byte int 16 -32,768 ถึง 32,767 ข้อมลู ชนิ ดจาํ นวนเตม็ แบบสั้น ไม่คิดเครอื่ งหมาย unsigned int 16 0 ถึง 65,535 short 8 -128 ถึง 127 unsigned short 8 0 ถงึ 255 long 32 -2,147,483,648 ถงึ ข้อมลู ชนิ ดจาํ นวนเตม็ แบบยาว ใชเ้ นื้ อท่ี 4 byte 2,147,483,649 ข้อมลู ชนิ ดจํานวนเตม็ แบบยาว ไม่คิดเครอ่ื งหมาย unsigned long 32 0 ถงึ 4,294,967,296 float 32 3.4*10e(-38) ถึง 3.4*10e(38) ขอ้ มลู ชนิ ดเลขทศนิ ยม ใชเ้ น้ื อท่ี 4 byte double 64 3.4*10e(-308) ถงึ 3.4*10e(308) ขอ้ มูลชนิ ดเลขทศนิ ยม ใชเ้ นื้ อท่ี 8 byte
คําสั่ งพื้นฐานการรับและแสดงผลข้อมูล แสดงผลออกทางหนา้ จอ การแสดงผลขอ้ มลู ออกทางหนา้ จอสามารถทาํ ไดง้ า่ ย โดยเรียกใชค้ าํ สงั่ หรือฟังกช์ นั มาตรฐานทีภ่ าษาซี เตรียมไวใ้ หใ้ ช้ คาํ สงั่ printf() คาํ สงั่ printf ถือวา่ เป็ นคาํ สงั่ พืนฐานที่สดุ ในการแสดงผลขอ้ มลู ทกุ ชนดิ ออกทางหนา้ จอ ไมว่ ่าจะเป็ น จาํ นวนเต็ม( int ) , ทศนยิ ม ( float ) , ขอ้ ความ ( string ) หรืออกั ขระ นอกจากนคี าํ สงั่ ยงั มคี วามยืดหยนุ่ สงู โดย เราสามารถกาํ หนดหรือจดั รปู แบบการแสดงผลใหม้ รี ะเบียบหรือเหมาะสมตามความตอ้ งการไดอ้ ีกดว้ ย รปู แบบ การเรียกใชค้ าํ สงั่ printf แสดงไดด้ งั นี
รหสั ควบคมุ รปู แบบการแสดงผลคา่ ของตวั แปรออกทางหนา้ จอ แสดงไดด้ งั นี
คาํ ส่ัง Do-while loop do-while loop นั้ นคลา้ ยกบั while loop ซง่ึ มนั สามารถใชท้ ดแทนกันได้ โดยมรี ูปแบบการใชง้ านดังน้ี do {statements} while (expression) ; ส่ิงท่แี ตกตา่ งของ do-while loop คือการตรวจสอบ expression หลงั จากการทาํ งานรอบแรกเสรจ็ ส้ิน นั่ น หมายความว่า do-while loop จะต้องทาํ งานอยา่ งน้ อย 1 รอบ สังเกตวุ า่ expression จะอย่ทู ต่ี อนทา้ ยของลูป มาดูตัวอย่าง using System;class DoWhileLoop{static void Main(string[] args) {int n;Console.WriteLine(\"Enter 0 to exit the loop\");do {Console.Write(\"Your number: \");int.TryParse(Console.ReadLine(), out n); Console.WriteLine(\"Number you entered is \" + n);} while (n != 0);Console.WriteLine(\"Loop ended\");}}
ในตวั อยา่ ง เป็ นการใช้ do-while loop เพื่อถามใหผ้ ใู้ ชป้ ้ อนตวั เลข (0) เพ่ือออกจากลปู ถา้ ตวั เลขทีใ่ สเ่ ขา้ มานนั ไมใ่ ชศ่ นู ย์ โปรแกรมก็จะถามใหใ้ สใ่ หมเ่ รื่อยไป และเมอื่ ใสเ่ ลขศนู ย์ มนั ทาํ ให้ expression ของเราเป็ น false และทาํ ใหโ้ ปรแกรมออกจากลปู Enter 0 to exit the loop Your number: 2 Number you entered is 2 Your number: 3 Number you entered is 3 Your number: 5 Number you entered is 5 Your number: 10 Number you entered is 10 Your number: 0 Number you entered is 0 Loop ended นเี่ ป็ นผลลพั ธข์ องตวั อยา่ งการใช้ do while loop เมอื่ ทดสอบรนั โปรแกรมและป้ อนตวั เลข
คาํ ส่ัง For loop for loop นนั เป็ นลปู ท่ีใชท้ าํ ซาํ คาํ สงั่ หรือชดุ ของคาํ สงั่ เป็ นจาํ นวนรอบทแี่ นน่ อน โดยมนั มรี ปู แบบใน การใชง้ านดงั นี for (initialize; condition; iterator) {statements} ในการใช้ for loop เราสามารถกาํ หนดคา่ เริ่มตน้ สรา้ งเงอ่ื นไข (expression) และทาํ การกาํ หนดการเพิ่มคา่ หรือ ลดคา่ ของตวั ทาํ ซาํ ไดก้ อ่ นท่ีลปู จะเร่ิมทาํ งาน มนั จะมปี ระโยชนท์ จ่ี ะใหส้ ะดวกเมอ่ื เรารจู้ าํ นวนรอบทีแ่ นน่ อนในการ วนซาํ ของโปรแกรม using System; using System;class ForLoop {static void Main(string[] args) {for (int i = 1; i <= 10; i++) { Console.WriteLine(i);
ในตัวอย่างเป็นการใช้ for loop เพ่ือแสดงตัวเลข 1 ถึง 10 เชน่ กนั สังเกตุวา่ การกาํ หนดค่าเรม่ิ ต้น การสรา้ งเงอ่ื นไขและการเพ่ิมค่าจะถกู ใส่ไวท้ ่ี ส่วนหัวของโปรแกรมท่เี ดียว อย่างไรกต็ าม มันกเ็ ป็นแค่ทางเลอื ก และเรา สามารถนํ าไปใส่ท่ใี หมไ่ ด้ถา้ หากต้องการ เหมือนตัวอย่างข้างลา่ งน้ี using System;class ForLoop static void Main(string[] args) int i = 1; for (; i <= 10; ) Console.WriteLine(i); i++; และขา้ งล่างน่ี เป็นผลลัพธข์ องโปรแกรมทงั้ สองท่ใี ช้ for loop จะเห็นว่ามนั ได้ผลลพั ธเ์ หมอื น while loop ซง่ึ ลปู ทงั้ สองประเภทน้ี ก็สามารถใชท้ ดแทน กนั ไดเ้ ชน่ กนั แต่อาจจะเขียนแตกต่างกนั เลก็ น้ อย
คาํ ส่ัง If คําสั่งควบคุมการทาํ งานทเ่ี ป็นพ้ืนฐานท่สี ุดในภาษา C นั้นก็คือคําสั่ง if มนั ใช้ สําหรบั สรา้ งเงอื่ นไขให้โปรแกรมทาํ งานตามท่ตี ้องการ ยกตวั อย่างเชน่ ถ้าหากวนั น้ี ฝนไมต่ ก คุณจะออกไปเทย่ี วข้างนอก น่ี เป็นการตัดสินใจทเ่ี กดิ ข้ึนและถูกนํ าแนวคิด มาใชใ้ นการเขียนโปรแกรม น่ี เป็นรูปแบบของการใชง้ านคําสั่ง if ในภาษา C if (expression) { // statements}
คําสั่ง if เป็นคําสั่งทใ่ี ชใ้ นการตรวจสอบวา่ เงอื่ นไขเป็นจรงิ หรอื ไม่ โดยการใชต้ ัวดําเนิ นการ ตา่ งๆ ในการสรา้ งเงอื่ นไขหรอื expression ถ้าผลลัพธเ์ ป็นจรงิ โปรแกรมจะทํางานในบลอ็ คของ คําสั่ง if ท่เี ราไดก้ าํ หนดข้นึ และถ้าหากผลลัพธไ์ มเ่ ป็นจรงิ โปรแกรมจะข้ามการทํางานใน บล็อคคําสั่งไป มาดูตัวอยา่ งการใชง้ านของมนั ; #include <stdio.h>int main() {if (10 == 10) {printf(\"block 1 is executed.\\n\");} if (3 < 1) {printf(\"block 2 is executed.\\n\");} int a = 10;if (a % 2 == 0) {printf(\"block 3 is executed.\\n\");} return 0} ในการทาํ งานของโปรแกรมเป็นการใชค้ ําสั่ง if เพ่ือเปรยี บเงอื่ นไขต่างๆ โดยแต่ละบล็อคคําสั่ง จะทาํ งานเมอื่ เงอื่ นไขเป็นจรงิ เทา่ นั้น บล็อคแรกจะทาํ งานเพราะว่า 10 มีค่าเทา่ กบั 10 บล็อคท่สี อง จะไมท่ ํางานเพราะวา่ 3 ไมน่ ้ อยว่า 1 และสําหรบั บลอ็ คสุดทา้ ยจะทาํ งาน เพราะวา่ a เป็นจาํ นวนคู่ และน่ี เป็นผลลัพธข์ องโปรแกรมเม่อื รนั คุณจะเห็นวา่ มีแค่ block 1 และ 3 ท่แี สดงผลเพราะวา่ เงอื่ นไขของ if เป็นจรงิ
คาํ ส่ัง while loop หลังจากทค่ี ุณได้รูจ้ ักคําสั่งเงอื่ นไขพื้นฐานไปแลว้ ต่อไปคุณจะได้รูจ้ กั คําสั่งของการทํางานซา ซง่ึ สามารถให้เราประมวลผลส่วนของโปรแกรมทต่ี อ้ งการได้ คําสั่งวนซาทง่ี า่ ยทส่ี ุดคือคําสั่ง while loop โดยการทํางานของคําสั่ง while loop จะทํางานเม่อื เงอื่ นไขเป็นจรงิ และจะส้ินสุดการทาํ งานจนกวา่ เงอ่ื นไขจะเป็นเทจ็ มาดูตวั อยา่ งของโปรแกรม #include <stdio.h> int main() {int n = 1; while (n <= 10) {printf(\"%d, \", n); n++; } return 0;} ในตวั อย่างเป็นการใชค้ ําสั่ง while เพ่ือแสดงผลตวั เลข 1 ถึง 10 โดยเราไดก้ าํ หนดค่าเรม่ิ ต้น ให้ n เทา่ กับ 1 และจะเพ่ิมข้ึนในการแสดงผลแตล่ ะครงั้ จนกวา่ จะมากกว่า 10 จึงส้ินสดุ การทํางาน ของโปรแกรม และจะไดผ้ ลลัพธด์ ังน้ี 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
ภาษาC ภาษาคอมพิวเตอร์ หมายถงึ ภาษาใดๆ ที่ผใู้ ชง้ านใชส้ ่ือสารกบั คอมพิวเตอร์ หรอื คอมพิวเตอรด์ ว้ ยกนั แลว้ คอมพิวเตอรส์ ามารถทาํ งาน ตามคําสั่งนั้ นได้ คําน้ี มกั ใชเ้ รยี กแทนภาษาโปรแกรม แต่ความเป็นจรงิ ภาษาโปรแกรมคือส่วนหน่ึ งของภาษาคอมพิวเตอรเ์ ทา่ นั้ น และมภี าษา อน่ื ๆ ทเี่ ป็นภาษาคอมพิวเตอรเ์ ชน่ กัน ยกตวั อย่างเชน่ HTML เป็นทงั้ ภาษามารก์ อัปและภาษาคอมพิวเตอรด์ ้วย แม้ว่ามนั จะไมใ่ ชภ่ าษา โปรแกรม หรอื ภาษาเครอื่ งนั้ นกน็ ั บเป็นภาษาคอมพิวเตอร์ ซง่ึ โดยทาง เทคนิ คสามารถใชใ้ นการเขียนโปรแกรมได้ แต่กไ็ มจ่ ัดว่าเป็นภาษา โปรแกรม
ภาษา C ภาษาซี เป็นการเขียนโปรแกรมพื้นฐาน สามารถประยกุ ตใ์ ชก้ ับงานตา่ งๆได้ มากมาย ระบบปฏบิ ัตกิ ารคอมพิวเตอร์ ทางคณิตศาสตร์ โปรแกรมทางไฟฟ้า อิเล็กทรอนิ กส์ ไมโครคอนโทรลเลอร์ เชน่ โปรแกรม MATLAB (The MathWorks - MATLAB and Simulink for Technical Computing) ซง่ึ เวลาใชส้ ามารถพิมพ์ชุดคําสั่ง ภาษาซเี พ่ิมเขา้ ไปในโปรแกรมคํานวณทางคณิตศาสตร์ ประมวลผลทางสัญญาณไฟฟ้า ทางไฟฟ้าส่ือสารกไ็ ด้ ทาํ ให้ประสิทธภิ าพของงานท่ที าํ ดยี ่ิงข้นึ ครบั และยงั มโี ปรแกรม อนื่ ๆ ทมี่ ภี าษาซปี ระยกุ ต์ใชก้ ันอกี มากมาย ไมส่ ามารถนํ ามากลา่ วได้หมด ถึงแม้ว่าภาษา ซอี าจจะดูเก่าไปสําหรบั คนอ่ืน แตผ่ มว่าควรศึกษาภาษาซที ีเ่ ป็นรากฐานของภาษาอ่ืนๆ เสียก่อน เพราะภาษาC++ จาวา (Java) ฯลฯ และ ระบบลนี กุ ซ์ เป็นระบบท่ถี ูกพัฒนามา จากระบบยนู ิ กซซ์ ง่ึ ก็เป็นทีร่ ูก้ ันทวั่ ไปวา่ ภาษาคู่บารมขี องระบบปฏิบตั ิการตระกลู ยนู ิ ก ซม์ ีการพัฒนามาจากภาษาซเี ชน่ กัน
ภาษาซเี ป็นภาษาทีบ่ างคนเรยี กว่าภาษาระดับกลาง คือไม่เป็นภาษาระดับตาแบบแอสเซมบลหี รอื เป็นภาษาสงู แบบ เบสิค โคบอล ฟอรแ์ ทรน หรอื ปาสคาล เน่ื องจากคุณสามารถจะจัดการเกยี่ ว กบั เรอ่ื งของพอยน์ เตอรไ์ ด้อยา่ งอสิ ระ และบางทคี ุณกส็ ามารถควบคุมฮารด์ แวรผ์ า่ นทาง ภาษาซี ได้ราวกับคุณเขยี นมนั ด้วยภาษาแอสเซมบลี ด้วยข้อดีเหล่าน้ี เองทาํ ให้โปรแกรมท่ถี กู เขียนด้วย ภาษาซมี คี วามเรว็ ในการปฏิบัติงานสงู กวา่ ภาษาทวั่ ๆไป แต่ก็ต้องแลกกบั การเรยี นรูแ้ ละการฝึกฝน อย่างหนั ก วิวัฒนาการของภาษาซี - ค.ศ. 1970 มีการพัฒนาภาษา B โดย Ken Thompson ซง่ึ ทํางานบนเครอ่ื ง DEC PDP-7 ซง่ึ ทํา งาน บนเครอ่ื งไมโครคอมพิวเตอรไ์ ม่ได้ และยังมีขอ้ จาํ กัดในการใชง้ านอยู่ (ภาษา B สืบทอดมา จาก ภาษา BCPL ซง่ึ เขียนโดย Marth Richards) - ค.ศ. 1972 Dennis M. Ritchie และ Ken Thompson ได้สรา้ งภาษา C เพ่ือเพ่ิมประสิทธภิ าพ ภาษา B ให้ดีย่งิ ข้นึ ในระยะแรกภาษา C ไม่เป็นท่นี ิ ยมแก่นั กโปรแกรมเมอรโ์ ดยทวั่ ไปนั ก - ค.ศ. 1978 Brian W. Kernighan และ Dennis M. Ritchie ได้เขียนหนั งสือเลม่ หน่ึ งชอื่ ว่า The C Programming Language และหนั งสือเลม่ น้ี ทาํ ให้บุคคลทวั่ ไปรูจ้ ักและนิ ยมใชภ้ าษา C ในการ เขยี น โปรแกรมมากข้ึน
- แตเ่ ดิมภาษา C ใช้ Run บนเครอื่ งคอมพิวเตอร์ 8 bit ภายใต้ระบบปฏิบตั ิการ CP/M ของ IBM PC ซง่ึ ในชว่ งปี ค. ศ. 1981 เป็นชว่ งของการพัฒนาเครอ่ื งไมโครคอมพิวเตอร์ ภาษา C จึงมี บทบาท สําคัญในการนํ ามาใชบ้ นเครอื่ ง PC ตัง้ แต่นั้นเป็นต้นมา และมกี ารพัฒนาตอ่ มาอีกหลาย ๆ ค่าย ดังนั้นเพ่ือกาํ หนดทศิ ทางการใชภ้ าษา C ให้เป็นไปแนวทางเดยี วกนั ANSI (American National Standard Institute) ได้กาํ หนดข้อตกลงท่เี รยี กวา่ 3J11 เพื่อสรา้ งภาษา C มาตรฐานข้นึ มา เรยี น ว่า ANSI C - ค.ศ. 1983 Bjarne Stroustrup แห่งห้องปฏิบัตกิ ารเบล (Bell Laboratories) ได้พัฒนาภาษา C++ ข้ึนรายละเอียดและความสามารถของ C++ มีส่วนขยายเพ่ิมจาก C ทส่ี ําคัญ ๆ ได้แก่ แนวความ คิดของการเขยี นโปรแกรมแบบกาํ หนดวัตถุเป้าหมายหรอื แบบ OOP (Object Oriented Programming) ซง่ึ เป็นแนวการเขียนโปรแกรมท่เี หมาะกบั การพัฒนาโปรแกรมขนาดใหญ่ทม่ี ีความ สลบั ซบั ซอ้ นมาก มขี ้อมลู ทใ่ี ชใ้ นโปรแกรมจาํ นวนมาก จงึ นิ ยมใชเ้ ทคนิ คของการเขยี นโปรแกรม แบบ OOP ในการพัฒนาโปรแกรมขนาดใหญ่ในปัจจบุ นั น้ี
เอกสารอ้างอิง https://www.google.com/search?q=%E0%B8%8A%E0%B8%99%E0%B8%B4%E0%B8%94%E0%B8%82%E0%B8%AD %E0%B8%87%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5%E0%B9%81%E0%B8%A 5%E0%B8%B0%E0%B8%95%E0%B8%B1%E0%B8%A7%E0%B9%81%E0%B8%9B%E0%B8%A3%E0%B9%83%E0%B8% 99%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B8%8B%E0%B8%B5&oq=%E0%B8%8A%E0%B8%99%E 0%B8%B4%E0%B8%94%E0%B8%82%E0%B8%AD%E0%B8%87%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1% E0%B8%B9%E0%B8%A5%E0%B9%81%E0%B8%A5%E0%B8%B0%E0%B8%95%E0%B8%B1%E0%B8%A7%E0%B9%81 %E0%B8%9B%E0%B8%A3%E0%B9%83%E0%B8%99%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B8%8 B%E0%B8%B5&aqs=chrome..69i57j0j69i61.11502j0j8&sourceid=chrome&ie=UTF-8
คณะผูจ้ ัดทํา น.ส.ธมลวรรณ โหมดบุรี 101 (6) (26) น.ส.สวรา เรอื งประโคน 127 (38) (40) น.ส.พนิ ตนั นท์ แซต่ งั้ 133 น.ส.ฐาปนี แดงสกลุ 135 ระดับชนั้ ปวช.1/3 แผนกคอมพิวเตอรธ์ ุรกิจ เสนอ วลิ าวลั ย์ วชั ระโรทยั วทิ ยาลยั เทคนิ คปทมุ ธานี
รายงานเลม่ น้ีเป็นส่วนหน่ึงของวชิ าหลกั การเขียน โปรแกรม รหัสวชิ า20204-2103 ภาคเรียนท่2ี ปีการศึ กษา 2562 วทิ ยาลัยเทคนิคปทมุ ธานี
Search
Read the Text Version
- 1 - 31
Pages: