Looping ธนวัฒน์ แซ่เอียบ
While Statement while (expression) statement ตราบเท่าที่ expression มีค่า non-zero (เป็นจริง) statement จะถูกปฏิบัติงานซ้ำๆกัน จนกระทั่ง expression มีค่า zero (เป็นเท็จ) while (expression) statement
For Statement for (expr1; expr2; expr3) statement
เปลี่ยนให้กลายเป็น while ? While vs. For For ใช้กับลูปที่มีลักษณะเป็นตัวนับ while (expression) statement for (expr1; expr2; expr3) statement เปลี่ยนให้กลายเป็น while ?
While vs. For จำเป็นต้องมีหรือไม่ ? while (expression) statement for (expr1; expr2; expr3) statement
Infinite Loops while(1){ } for(; ;){ } while (expression) statement for (expr1; expr2; expr3) statement
Example โปรแกรมพิมพ์ตัวเลขตั้งแต่ 1 ถึง 100
Exercise โปรแกรมบวกเลขตั้งแต่ 1-100 (1+2+3+...+100) จาก flowchart นี้จงเขียนโปรแกรมด้วยภาษา C โดยใช้ for และ while พร้อมกับ flowchart ที่ได้จากโปรแกรม sfc int i=1, sum=0 N i<=100 Y sum=sum+i i=i+1 printf(“%d”,sum)
Exercise จงเขียนโปรแกรมพิมพ์ตัวเลขตั้งแต่ 100 ถึง 1 โดยใช้ for และ while (ให้เขียน flowchart และโปรแกรมภาษา C )
Exercise จงเขียนโปรแกรมรับข้อมูลที่ละตัวอักษรจากคีย์บอร์ดแล้วพิมพ์ตัวอักษรนี้ออกทางจอภาพ จนกระทั่งพบตัวอักษร ‘\n’ จึงจบการทำงาน (ให้เขียน flowchart และโปรแกรมภาษา C) พิจารณาข้อมูลต่อไปนี้ ‘a’ – ‘z’ letter ‘0’ – ‘9’ digit จากข้อแรกให้นับจำนวนตามกลุ่มตัวอักษรที่รับเข้า เมื่อพบตัวอักษร ‘\n’ ให้พิมพ์จำนวนกลุ่มตัวอักษรออกทางจอภาพ
Do-While Statement do statement while (expression);
Do-While Statement true false action(s) condition
Exercise จงเขียนโปรแกรมพิมพ์ตัวเลขตั้งแต่ 100 ถึง 1 โดยใช้ do while (ให้เขียน flowchart และโปรแกรมภาษา C ) จงเขียนโปรแกรมบวกเลขตั้งแต่ 1-100 (1+2+3+...+100) โดยใช้ do while (ให้เขียน flowchart และโปรแกรมภาษา C )
ที่มา The C Programming Language : Brian W. Kernighan, Dennis M. Ritchie