ระบบคอมพิวเตอร์และการประมวลผลข้อมูล
อุปกรณ์คอมพิวเตอร์ ถือเป็นเครื่องมือที่สำคัญสำหรับการประมวลผลข้อมูล การทำงานของระบบคอมพิวเตอร์( Computer System) ประกอบด้วย 4 ส่วน คือ 1) หน่วยประมวลผล 2) หน่วยความจำ 3) หน่วยรับเข้าข้อมูล 4) หน่วยส่งออกข้อมูล และในปัจจุบันหน่วยที่สำคัญอีกหน่วยหนึ่งคือ หน่วยสื่อสารซึ่งทำให้อุปกรณ์คอมพิวเตอร์สามารถติดต่อสื่อสารกับคอมพิวเตอร์เครื่องอื่นๆ ได้
การพัฒนาโปรแกรมคอมพิวเตอร์
การพัฒนาโปรแกรมคอมพิวเตอร์ ถือเป็นการสั่งงานอุปกรณ์คอมพิวเตอร์ เพื่อให้ประมวลผลข้อมูลตามที่ต้องการได้ โดยใช้การเขียนโปรแกรมคอมพิวเตอร์ด้วยการสร้างชุดคำสั่งจากภาษาคอมพิวเตอร์ ซึ่งขั้นตอนการพัฒนาโปรแกรมคอมพิวเตอร์หรือซอฟต์แวร์คอมพิวเตอร์ ประกอบด้วย 3 ขั้นตอนหลักคือ 1) การวิเคราะห์และออกแบบ (Analysis & Design) 2) การเขียนโปรแกรม (Implement) 3) การทดสอบและนำไปใช้งาน (Testing) ทั้ง 3 ขั้นตอนอาจมีการทำซ้ำเพื่อให้เกิดคุณภาพของซอฟต์แวร์หรือตรงตามความต้องการของผู้ใช้มากที่สุด โดยเกี่ยวข้องกันตั้งแต่เริ่มต้นจนสิ้นสุดกระบวนการ จึงมีการพัฒนารูปแบบในการพัฒนาโปรแกรมคอมพิวเตอร์ (Software Process Model) ที่หลากหลาย ดังรูปที่ 1
อัลกอริทึมและผังงาน
ในการแก้ปัญหาทางคอมพิวเตอร์ โดยใช้ความสามารถของอุปกรณ์คอมพิวเตอร์ด้วยการเขียนโปรแกรมคอมพิวเตอร์ในการประมวลผลข้อมูล ซึ่งวิธีการที่ใช้ในการแก้ปัญหานี้ เรียกว่า อัลกอริทึม (Algorithm) การออกแบบขั้นตอนการทำงานก่อนการเขียนโปรแกรมคอมพิวเตอร์ ถือเป็นขั้นตอนหนึ่งในการพัฒนาโปรแกรมคอมพิวเตอร์ เครื่องมือที่นิยมนำมาใช้ในการวิเคราะห์และออกแบบขั้นตอนการทำงานของโปรแกรมคือ ผังงาน(Flow Chart) ซึ่งเปรียบเสมือนแบบจำลองทางซอฟต์แวร์ ที่ช่วยให้ง่ายต่อการนำไปใช้ในขั้นตอนการเขียนโปรแกรม
ภาษาคอมพิวเตอร์
เมื่อออกแบบขั้นตอนและวิธีการในการทำงานที่ชัดเจน ขั้นตอนของการเขียนโปรแกรมคอมพิวเตอร์ หรือการสร้างชุดคำสั่งภาษาคอมพิวเตอร์ตามที่ออกแบบ เพื่อทำให้โปรแกรมดำเนินการได้อย่างถูกต้อง ทำให้อุปกรณ์คอมพิวเตอร์ดำเนินการตามคำสั่งที่กำหนดไว้ได้ ซึ่งภาษาคอมพิวเตอร์และอุปกรณ์คอมพิวเตอร์มีวิวัฒนาการมาหลายยุคสมัย ทำให้สามารถใช้ภาษาคอมพิวเตอร์สั่งงานอุปกรณ์คอมพิวเตอร์ได้ง่ายยิ่งขึ้น แต่ยังคงใช้การแปลภาษา เพื่อแปลให้อยู่ในรูปแบบภาษาเครื่อง ซึ่งอุปกรณ์คอมพิวเตอร์เข้าใจและทำงานได้อย่างรวดเร็ว แต่มนุษย์เข้าใจได้ยากกว่า จึงเกิดภาษาคอมพิวเตอร์ใหม่ๆ เกิดขึ้นที่รองรับกระบวนทัศน์ในการเขียนโปรแกรม เพื่อควบคุมหรือสั่งงานอุปกรณ์คอมพิวเตอร์ในการประมวลผล
การเขียนโปรแกรมด้วยภาษา C
การเขียนโปรแกรมคอมพิวเตอร์ด้วยภาษา C ประกอบด้วยองค์ประกอบต่างๆ ที่จำเป็นในการเขียนโปรแกรมดังนี้ 1) Preprocessor Commands 2) Functions 3) Variables 4) Statements & Expressions และ 5) Comments
ข้อมูลและการดำเนินการกับข้อมูล
ในการประมวลผลข้อมูล ชนิดของข้อมูล (data type) ที่ใช้ในการเขียนโปรแกรมจะมีข้อมูลต่างๆ เข้ามาเกี่ยวข้องเช่น การนับจำนวนรอบ (loop) ของการทำงานโดยใช้ข้อมูลชนิดจำนวนเต็ม หรือการแสดงข้อความ โดยข้อมูลชนิดตัวอักษร ถูกแบ่งเป็นหลายชนิดตามจุดประสงค์ของการใช้งาน นอกจากนี้ข้อมูลแต่ละชนิด ยังใช้เนื้อที่หน่วยความจำ (memory) ไม่เท่ากันจึงมีการแบ่งชนิดของข้อมูล
ตัวแปร (variable) เป็นการประกาศขึ้นเพื่อใช้จัดเก็บข้อมูลในหน่วยความจำ หรือการอ้างถึงตำแหน่งของข้อมูล ในการประมวลผลและแสดงผล ทำให้เกิดการเปลี่ยนแปลงการทำงานของโปรแกรม ในการประกาศตัวแปร (variable declaration) เป็นการจองเนื้อที่ในหน่วยความจำสำหรับเก็บข้อมูล ด้วยการใช้ชื่อตัวแปรแทนการระบุตำแหน่งของหน่วยความจำที่ใช้ในการเขียนโปรแกรมและความสะดวกต่อกสนเข้าถึงค่าที่เก็บอยู่ในหน่วยความจำ
การรับและแสดงผลข้อมูล
ในการดำเนินการประมวลผลข้อมูล ภาษา C ใช้การรับข้อมูลนำเข้าผ่านตัวแปรผ่านฟังก์ชัน scanf() และใช้ฟังก์ชัน printf() เพื่อแสดงผลผ่านหน้าจอ ซึ่งถูกจัดเก็บไว้ในไลบรารี stdio.h ที่สามารถเรียกใช้งานด้วยคำสั่ง #include
การควบคุมคำสั่งทำงาน
การเขียนโปรแกรมเพื่อควบคุมการทำงาน อุปกรณ์คอมพิวเตอร์ให้หลักการทางตรรกะเพื่อควบคุมการทำงานโดยเรียนแบบการทำงานของสมองมนุษย์ ด้วยการจัดลำดับการทำงาน การตรวจสอบเงื่อนไข การทำซ้ำ การแยกส่วนทำให้สามารถแก้ปัญหาได้ง่ายขึ้น เป็น กระบวนการควบคุมขั้นตอนการทำงาน และผลลัพธ์ของโปรแกรม ซึ่งจะแสดงการควบคุมการทำงานด้วยผังงานดังภาพต่อไปนี้ โดยใช้ลูกศรควบคุม ประกอบด้วยคำสั่ง if() else, for(), while() หรือ การจัดกลุ่มคำสั่ง {} เป็นต้น
โครงสร้างการทำงานแบบเรียงลำดับ
การเขียนโปรแกรมตามโครงสร้างการทำงานแบบเรียงลำดับ เป็นการเขียนโปรแกรมในแต่ละบล็อก โดยประกอบด้วยคำสั่ง(Statement) ตามลำดับ ถือเป็นการเรียงลำดับขั้นตอนตามที่ต้องการ ในการจัดวางชุดคำสั่งก่อนหลัง ทำให้ได้ผลลัพธ์ที่แตกต่างกันออกไป ซึ่งการดำเนินการบางอย่างไม่จำเป็นต้องจัดเรียงลำดับการทำงาน แต่บางอย่างการจัดวางลำดับขั้นตอนทำให้เกิดข้อผิดพลาดได้ หรือการจัดลำดับเหตุการณ์ทำงาน
โครงสร้างการทำงานแบบทางเลือก
การเขียนโปรแกรมคอมพิวเตอร์ที่ต้องทำการตัดสินใจเลือกทางใดทางหนึ่งในการดำเนินการ จำเป็นต้องกำหนดเงื่อนไขให้ชัดเจน เพื่อให้สามารถเลือกการทำงานได้ ซึ่งการทำงานแบบทางเลือก คอมพิวเตอร์จะใช้ตัวแปรเพื่อเลือกดำเนินการอย่างใดอย่างหนึ่ง
โครงสร้างการทำงานแบบวนซ้ำ
โครงสร้างการทำซ้ำ ถือเป็นความสามารถหนึ่งที่มีประสิทธิภาพที่สุดของคอมพิวเตอร์ ซึ่งการทำซ้ำ (Loop) เป็นการทำงานพื้นฐานของภาษาคอมพิวเตอร์ ที่ช่วยให้โปรแกรมคอมพิวเตอร์ที่เขียนขึ้นสามารถทำงานได้ตลอดเวลาหรือขึ้นอยู่กับเงื่อนไขในการทำซ้ำ โดยการวนซ้ำในภาษา C ประกอบด้วย 1) for loop 2) while loop 3) do...while loop
โปรแกรมย่อย
ส่วยย่อยหรือฟังก์ชัน (function) ทำให้การเขียนโปรแกรมทำได้ง่ายขึ้น เนื่องจากการแบ่งงานออกเป็นส่วนเล็กๆ แล้วนำมาประกอบกัน แต่เป็นแนวคิดจากบนลงล่างอาจเกิดการทำงานที่ซ้ำซ้อนกันได้ โดยหลักการแยกและประกอบถือเป็นหลักการที่สำคัญในการเขียนโปรแกรมขนาดใหญ่ ในการแยกส่วนด้วยการสร้างฟังก์ชันในภาษา C สามารถกำหนดฟังก์ชันได้ ด้วยการประกาศหรือนิยามฟังก์ชัน เพื่อให้ส่วนหลักสามารถใช้งานได้
อาร์เรย์
การจัดเก็บชุดข้อมูลแบบเรียงแถวถือเป็นการจัดเก็บข้อมูลประเภทเดียวกันผ่านการประกาศตัวแปร ๆ เดียวแต่สามารถจัดเก็บข้อมูลได้ทั้งชุด โดยสามารถระบุข้อมูลที่จัดเก็บแต่ละตัวได้ด้วยตัวชี้ (index) เมื่อต้องการประมวลผลแบบชุดสามารถใช้อาร์เรย์ได้ ในภาษา C การประกาศตัวแปรประเภทชุดข้อมูลแบบเรียงแถว ทำได้โดยใช้สัญลักษณ์ [] ก้ามปูไว้ด้านหลังตัวแปร
ไลบรารีและชุดคำสั่ง
การจัดการข้อผิดพลาดของโปรแกรมคอมพิวเตอร์ ด้วยการทดสอบหรือใช้การเขียนโปรแกรมที่มีประสิทธิภาพ รวมทั้งการเขียนโปรแกรมเพื่อจัดการข้อผิดพลาด ในภาษา C ไม่ให้การสนับสนุนโดยตรงสำหรับการจัดการข้อผิดพลาด (การจัดการข้อยกเว้น) แต่สามารถป้องกันข้อผิดพลาดที่อาจเกิดขึ้นในขณะดำเนินการของโปรแกรม ด้วยการใช้ชุดคำสั่งของไลบรารี errno.h หรือการกำหนดค่าเริ่มต้นเพื่อป้องกันการทำงานที่ผิดพลาดได้