โค้ด: เลือกทั้งหมด
do
{
...คำสั่ง...
.
.
}while (เงื่อนไข);
***do while แตกต่างจาก while ตรงที่ do while จะทำก่อนแล้วตรวจสอบเงื่อนไข แต่ while จะตรวจสอบเงื่อนไขก่อนแล้วจึงทำตามคำสั่ง
เช่น
โปรแกรมนับและแสดงเลข 1-10
โค้ด: เลือกทั้งหมด
#include <stdio.h>
int main()
{
int i=1;
do
{
printf("%d ",i);
i++;
}while (i<=10);
return 0;
}
เหมาะสำหรับโปรแกรมที่ต้องการให้ทำก่อนแล้วจึงตรวจสอบเงื่อนไข และสามารถนำคำสั่ง break มาประยุกต์ใช้ได้
เช่น
โปรแกรมแยกและนับเลขคู่คี่ตามจำนวนที่ป้อนเข้ามา
โค้ด: เลือกทั้งหมด
#include <stdio.h>
int main()
{
int num, c_even = 0, c_odd = 0;
do
{
scanf("%d",&num);
if(num%2 == 0 && num != 0)
{
printf("%d is even\n",num);
c_even++;
}
else if (num%2 == 1)
{
printf("%d is odd\n",num);
c_odd++;
}
else if (num == 0)
{
break;
}
}while (1);
printf("Even: %d, Odd: %d",c_even, c_odd);
return 0;
}
บทความที่เกี่ยวข้อง
การเขียน if/else ในภาษา C
ภาษาซี กับ โจทย์ loop ในตำนาน
การเขียน while loop ในภาษา C