สำหรับคำสั่งควบคุมการทำงานของโปรแกรม สามารถแบ่งกลุ่มตามลักษณะการทำงานตามข้อกำหนดมาตรฐานของสถาบัน ANSI (American National Standards Institute) กำหนดให้ภาษา C มีคำสั่งที่ใช้ควบคุมการทำงานของโปรแกรมดังนี้
- คำสั่งวนลูปหรือทำงานซ้ำ ๆ เป็นลูป (loop statements) ได้แก่คำสั่งต่อไปนี้
- คำสั่ง for เป็นคำสั่งที่สั่งให้โปแกรมมีการทำงานซ้ำ ๆ วนลูปจนกว่าเงื่อนไขที่กำหนดไว้เป็นเท็จ จึงออกจากคำสั่ง for ไปทำคำสั่งถัดไป ควรใช้คำสั่ง for ในกรณีที่ทราบจำนวนรอบของการทำงาน
- คำสั่ง while เป็นคำสั่งที่มีการทำงานซ้ำ ๆ เป็นลูป และมีลักษณะการทำงานของคำสั่งคล้ายกับคำสั่ง for แตกต่างกันตรงที่ การใช้ while ไม่ต้องทราบจำนวนรอบของการทำงานที่แน่นอน แต่ต้องมีเงื่อนไขที่เป็นเท็จจึงจะออกจากคำสั่ง while ได้
- คำสั่ง do while เป็นคำสั่งที่มีการทำงานซ้ำ ๆ วนลูป คล้ายกับคำสั่ง while มาก แตกตางกันตรงที่คำสั่ง do while จะทดสอบเงื่อนไขหลังจากที่ได้ทำงานตามคำสั่งภายในลูปไปแล้ว 1 รอบ จากนั้นจึงค่อยย้อนกลับมาทดสอบเงื่อนไขอีกครั้งหนึ่ง ถ้าเงื่อนไขเป็นจริงก็จะทำงานตามคำสั่งภายในลูป แต่ถ้าเงื่อนไขเป็นเท็จจะออกจากคำสั่ง do while ทันที
- คำสั่ง break เป็นคำสั่งที่สั่งให้ออกจากคำสั่ง for หรือ while หรือ do while หรือคำสั่ง switch
- คำสั่ง continue เป็นคำสั่งที่สั่งให้กลับไปทำงานที่คำสั่งแรกของลูปคำสั่ง for หรือ while หรือ do while ทำให้มีการทำงานในรอบต่อไป
- คำสั่งทดสอบเงื่อนไขในการตัดสินใจ (decision statements) ได้แก่คำสั่งต่อไปนี้
- คำสั่ง if เป็นคำสั่งที่สั่งให้มีการทดสอบเงื่อนไขก่อนที่จะไปทำงานตามคำสั่งที่กำหนดไว้
- คำสั่ง if else เป็นคำสั่งที่สั่งให้มีการทดสอบเงื่อนไข โดยมีการตัดสินใจแบบ 2 ทางเลือก
- คำสั่งโครงสร้าง else if (หรือ nested if) เป็นโครงสร้างที่ทำให้เราสามารถใช้คำสั่ง if else ซ้อนกันได้เรื่อย ๆ ส่วนมากจะใช้ในการตัดสินใจที่มากกว่า 2 ทางเลือกขึ้นไป บางครั้งอาจเรียกโครงสร้างนี้ว่า nested if
- คำสั่ง switch เป็นคำสั่งที่ใช้ทดสอบเงื่อนไขในกรณีที่มีทางเลือกสำหรับตัดสินใจมากกว่า 2 ทางขึ้นไปเช่นเดียวกันกับ nested if โดยมากนิยมใช้คำสั่ง switch แทนคำสั่ง nested if เพราะมีรูปแบบการใช้คำสั่งที่ง่ายและสะดวกในการแก้ไขคำสั่งเมื่อมีข้อผิดพลาดเกิดขึ้น
- คำสั่งที่สั่งให้ไปทำงานตามจุดที่กำหนดให้ (goto statements) ได้แก่ คำสั่ง goto และ label เป็นคำสั่งที่สั่งให้ไปทำงาน ณ จุดที่เรากำหนด โดยจะต้องตั้งเป็นชื่อ label ไว้
0 ความคิดเห็น:
แสดงความคิดเห็น