การเขียนโปรแกรมเบื้องต้นภาษา C

 
จุดประสงค์รายวิชา
1.  ผู้เรียนมีความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ต่างๆ
2.  ผู้เรียนเข้าใจหลักการเขียนโปรแกรม
3.  ผู้เรียนสามารถเขียนโปรแกรมภาษาซีได้อย่างเป็นระบบและมีขั้นตอน
4 .  ผู้เรียนสามารถเขียนโปรแกรมประยุกต์ตามการใช้งานต่างๆ ได้

คำอธิบายรายวิชา
ศึกษาความรู้เบื้องต้นเกี่ยวกับภาษาซี  หลักการเขียนโปรแกรม  องค์ประกอบของภาษาซี  คำสั่งในการรับและแสดงผลข้อมูล  คำสั่งควบคุมในการทำงาน  ตัวแปร Array  ฟังก์ชัน (Function)  พอยน์เตอร์ (Pointer)  การจัดแฟ้มข้อมูล  ข้อมูลชนิดโครงสร้าง  และการประยุกต์การเขียนโปรแกรม

รู้จักกับภาษาคอมพิวเตอร์
               ก่อนที่จะเขียนโปรแกรมภาษา  ขึ้นมานั้น  สิ่งแรกที่ควรทำความเข้าใจก็คือ  รายละเอียดทั้งหมดของภาษา  C เพื่อเข้าใจถึงที่มา  ความสามารถ  รวมถึงลักษณะการทำงานโดยรวมของภาษา  เมื่อศึกษาถึงเรื่องใดก็ตาม  การทำความเข้าใจถึงรากฐานของเรื่องนั้นย่อมจะทำให้เรามีพื้นฐานพร้อมที่จะเรียนรู้เนื้อหาในรายละเอียดต่อไปได้เป็นอย่างดี

รู้จักกับภาษา C
               ภาษา เป็นภาษาที่เก่าแก่ถือกำเนิดมายาวนาน  โดยแต่เดิมนั้นภาษา  ถูกพัฒนาขึ้นเพื่อให้เป็นภาษาสำหรับการสร้างระบบปฏิบัติการยูนิกซ์  (Unix)  เนื่องจากในขณะนั้นระบบปฏิบัติการยูนิกซ์เขียนด้วยภาษาแอสเซมบลิ  (Assembly)  ซึ่งเป็นภาษาที่ยึดติดกับฮาร์ดแวร์ของเครื่อง  ดังนั้น  การที่จะย้ายระบบปฏิบัติการไปใช้กับเครื่องอื่นจึงเป็นเรื่องที่ลำบากมาก  ซึ่งนับเป็นข้อเสียที่สำคัญของภาษาแอสเซมบลิ
               ดังนั้น  ภาษา ซึ่งเป็นภาษาที่ไม่ยึดติดกับฮาร์ดแวร์จึงถูกพัฒนาขึ้นมา  ในปัจจุบัน  ไม่ได้จำกัดอยู่เพียงแค่งานสร้างระบบปฏิบัติการเท่านั้น  แต่สามารถนำไปใช้สร้างโปรแกรามเพื่องานในทุกประเภทยกตัวอย่างเช่น  งานเกี่ยวกับการคำนวณ  ควบคุมการทำงานของอุปกรณ์ฮาร์ดแวร์ชนิดต่าง ๆ  การจัดการฐานข้อมูล  หรือสร้างโปรแกรมต่าง ๆ เป็นต้น

ประวัติของภาษา C
               ภาษา คิดค้นขึ้นมาเป็นครั้งแรกโดย  เดนนิส  ริทชี่  (Dennis  Ritchie)  ที่ห้องแล็บเบล  (Bell  Labs)  ในปี ค.ศ. 1972  โดยได้แนวคิดมาจากภาษา  BCPL  ซึ่งพัฒนาขึ้นโดย  มาร์ติน  ริชาร์ด  (Martin  Richards)  และภาษา  ที่เขียนขึ้นโดย  เคน  ทอมพ์สัน  (Ken  Thompson)  เพื่อนำมาพัฒนาต่อจนได้ภาษาใหม่ที่มีประสิทธิภาพการทำงานสูง  หลังจากนั้นในปี ค.ศ. 1978 ภาษา จึงได้รับการเผยแพร่อย่างเป็นทางการโดยเคอร์นิกแฮน  (Kernighan)  และเดนนิส  ริทชี่

               จุดเด่นของภาษา C
               ภาษา ได้รับการยอมรับและใช้งานกันอย่างกว้างขวาง  สาเหตุน่าจะมาจากเหตุผลดังต่อไปนี้
·        ถูกกำหนดเป็นมาตรฐานสำหรับเครื่องคอมพิวเตอร์ทุกรุ่น  (IBM, PC, Macintosh  และเครื่องประกอบเอง)  และระบบปฏิบัติการทุกชนิด  (Windows,  Unix,  Linux,  …)  ทำให้โครงสร้างทางภาษา  ฟังก์ชัน  และไลบรารีต่าง ๆ  สามารถนำไปใช้งานระหว่างเครื่องแต่ละรุ่นและระบบปฏิบัติการแต่ละชนิดได้
·        ในปัจจุบันมีการพัฒนาตัวแปลภาษา ขึ้นมาใช้กับเครื่องทุกรุ่นและระบบปฏิบัติการทุกชนิด  ดังนั้นไม่ว่าเราจะใช้เครื่องรุ่นใด  และใช้แบบปฏิบัติการชนิดใดก็ตาม  สามารถเขียนโปรแกรมภาษา ได้แน่นอน
·        ภาษา มีโครงสร้างทางภาษาที่ดี  และเครื่องหมายสำหรับดำเนินการ  ไม่ว่าจะเป็นการคำนวณทางคณิตศาสตร์  ตรรกศาสตร์  หรือการเปรียบเทียบ ล้วนมีประสิทธิภาพการทำงานสูง
·        โดดเด่นเรื่องการติดต่อและควบคุมการทำงานของฮาร์ดแวร์  ถือเป็นจุดเด่นของภาษา ที่ทำได้ดีเหนือกว่าภาษาอื่น ๆ มาก  เพราะสามารถเขียนคำสั่งได้ง่าย  กลายเป็นโปรแกรมที่มีขนาดเล็กกะทัดรัด  ทำให้วิศวกรเลือกใช้ภาษานี้มากที่สุด
·        มีฟังก์ชันสำเร็จสำหรับงานประเภทต่าง ๆ  ให้เลือกใช้มากมาย  ซึ่งช่วยประหยัดเวลาในการเขียนคำสั่ง  นอกจากนี้ถ้าฟังก์ชันที่ภาษา เตรียมไว้ให้ใช้งานได้ไม่ตรงตามต้องการทั้งหมด  เราสามารถเขียนคำสั่งเพิ่มเติมลงไปได้ด้วย

การสั่งงานคอมพิวเตอร์ด้วยภาษาโปรแกรม
               การที่จะสื่อสารหรือบอกความต้องการของเรากับใครสักคน  แน่นอนที่สุดภาษาที่ทั้งสองฝ่ายเข้าใจตรงกันจะถูกนำมาใช้เป็นสื่อกลาง  การสื่อสารหรือสั่งงานกับคอมพิวเตอร์ก็เช่นเดียวกัน  ภาษาที่จะนำมาใช้เป็นสื่อกลางก็คือ  ภาษาที่เครื่องคอมพิวเตอร์เข้าใจ  ซึ่งเรียกกันว่า  ภาษาเครื่อง  (Machine  Language)
               ภาษาเครื่องจะอยู่ในรูปแบบของรหัสเลขฐานสอง  (Binary  Code)  ซึ่งประกอบด้วยตัวเลขอยู่เพียงแค่  2  ตัวนั่นคือ  0  และ  1 อธิบายได้ว่าเป็นภาษาที่ประกอบด้วยตัวเลข  0  และ  1  เรียงลำดับและต่อกันเป็นความหมายที่เครื่องคอมพิวเตอร์เข้าใจ  เมื่อลองนึกภาพตามจะพบว่าเป็นเรื่องยากที่มนุษย์จะสามารถเข้าใจในภาษานั้นได้
               ต่อมาจึงมีการพัฒนาภาษาสำหรับสื่อสารกับคอมพิวเตอร์ที่มนุษย์เข้าใจ  โดยใช้ตัวอักษรภาษาอังกฤษมากำหนดเป็นรูปแบบคำสั่งซึ่งส่วนใหญ่เป็นคำที่มีความหมายในภาษาอังกฤษ  แต่การที่จะทำให้คอมพิวเตอร์เข้าใจภาษาที่พัฒนาขึ้นมาได้นั้น