หน้าหลัก
แนะนำรายวิชา
แบบทดสอบวัดผลสัมฤทธิ์ก่อนเรียน
บทที่ 1 ภาษาคอมพิวเตอร์
บทที่ 2 แนวคิดการโปรแกรม
บทที่ 3 รหัสเทียม
บทที่ 4 ผังงาน
บทที่ 5 โครงสร้างภาษาซี
บทที่ 6 ติดตั้งโปรแกรม Dev-c++
บทที่ 7 ตัวแปรภาษาซี
บทที่ 8 ตัวดำเนินการภาษาซี
บทที่ 9 การแสดงผล
บทที่10 การรับข้อมูล
บทที่ 11 การเลือกทำตามเงื่อนไข
บทที่ 12 คำสั่งวนซ้ำ
แบบทดสอบผลสัมฤทธิ์หลังเรียน
แหล่งศึกษาเพิ่มเติม

 

การวนลูปทำงานอย่างน้อยหนึ่งครั้งด้วยคำสั่ง do...while

         คำสั่งวนซ้ำ do...while เป็นคำสั่งวนซ้ำการทำงานเดิม ๆ โดยโปรแกรมจะทำงานชุดคำสั่งภายใน Loop ก่อน 1 รอบ

จึงตรวจสอบเงื่อนไขที่กำหนด ถ้าเงื่อนไขเป็นจริง ให้กลับไปทำงานชุดคำสั่งภายใน Loop อีกครั้ง และตรวจสอบเงื่อนไขที่กำหนด

อีกครั้ง ถ้าเงื่อนไขเป็นเท็จ โปรแกรมจะออกจาก Loop การทำงานไปทำงานที่คำสั่งถัดไปทันที

คำสั่ง do...while ในภาษาซี มีรูปแบบคำสั่งดังนี้

 

ตัวอย่าง รับค่าจากแป้นพิมพ์แล้วเรียงลำดับจากหลังไปหน้า

 

บรรทัดที่ 1 คอมไพเลอร์ทำการค้นหาเฮดเดอร์ไฟล์ stdio.h จากไดเรกทอรี่
บรรทัดที่ 2 คอมไพเลอร์ทำการค้นหาเฮดเดอร์ไฟล์ conio.h จากไดเรกทอรี่
บรรทัดที่ 6 ประกาศตัวแปร number ชนิด long
บรรทัดที่ 7 ประกาศตัวแปร id ชนิด int
บรรทัดที่ 8 แสดงคำว่า Input number for backword ผ่านทางหน้าจอ
บรรทัดที่ 9 รับค่าจากคีย์บอร์ดมาเก็บไว้ที่ตัวแปร number
บรรทัดที่ 12 แสดงคำว่า This backword number is ผ่านทางหน้าจอ
บรรทัดที่ 14-17

ทำงานชุดคำสั่งภายใน Loop ก่อน 1 รอบ
จึงตรวจสอบเงื่อนไขที่กำหนด ถ้าเงื่อนไขเป็นจริง ให้กลับไปทำงานชุดคำสั่งภายใน Loop อีกครั้ง

บรรทัดที่ 19 เงื่อนไขเป็นเท็จ โปรแกรมจะออกจาก Loop (ตรวจสอบได้ว่า number>0)
บรรทัดที่ 21 จบโปรแกรม

 

ผลลัพธ์

คำสั่ง break

คำสั่ง break มีไว้สำหรับบังคับให้ Loop สิ้นสุดการทำงานในทันที การใช้คำสั่ง

break มักจะสร้างให้กับเงื่อนไขที่ทำให้โปรแกรมออกจาก Loop สามารถใช้ได้กับ Loop ทุกประเภททั้ง while, do-while, for

ตัวอย่างการใช้คำสั่ง break

for (int i = 1; i <= 10; i++)
{
printf(i);
if (i == 5) break;

ในตัวอย่างโปรแกรมจะออกจาก Loop เมื่อ i มีค่าเท่ากับ 5 โดยจะไม่สนใจเงื่อนไขใน Loop ที่ i <= 10 จะเป็นจริงหรือไม่

1 2 3 4 5