Page 77 - การพัฒนาการหนังสืออิเล็กทรอนิกส์ภาษาของคอมพิวเตอร์
P. 77
�
หน่วยที5 คาสั�งควบคุมแบบทางเลือก 72 หน่วยที5 คาสั�งควบคุมแบบทางเลือก 73
ํ
�
ํ
......................................................................................................................................................... ........................................................................................................................................................
2. คำาสั่ง if และ if-else คำาสั่ง อาจเป็นคำาสั่งอย่างง่าย หรือคำาสั่งเชิงประกอบ ตามตัวอย่างที่ 4.1.1
----------------------------------------------------------------- ตัวอย่างที่ 4.1.1 โปรแกรมทายตัวเลข1
รูปแบบของคำาสั่ง if เป็นดังนี้ 1 2 //Program: Guess1.c
3 #define TARGET 25
4 #include <stdio.h>
5
if (เงื่อนไขทางเลือก) 6 7 void main() {
int y;
คำาสั่ง; 8 9 printf("Enter integer value: ");
10 scanf("%d",&y);
11
12 if (y == TARGET);
13 printf("\nYour guess is correct.");
14 printf("\nGood bye.\n");
15
16 getch();
17 }
ผลลัพธ์ของการรันครั้งที่ 1 คือ
Enter integer value: 18
Good bye.
ผลลัพธ์ของการรันครั้งที่ 2 คือ
Enter integer value: 25
Your guess is correct.
ผังงานของคำาสั่ง if Good bye.
จากการรันครั้งที่ 1 ตัวแปร y (ในบรรทัดที่ 7) รับค่าจากแป้นพิมพ์ เท่ากับ 18
เงื่อนไขทางเลือก ที่เขียนอยู่ระหว่างเครื่องหมาย ( และ ) เป็นนิพจน์ใด ๆ ที่สามารถ (ในบรรทัดที่ 10) นิพจน์เปรียบเทียบ y == TARGET (ในบรรทัดที่ 12) จะมีค่าเป็น
ประเมินค่าได้ เท็จ แล้วฟังก์ชัน printf( ) (ในบรรทัดที่ 13) จะไม่ได้ถูกประมวลผล แต่ไปประมวล
ในกรณีที่ เงื่อนไขทางเลือก มีค่าเป็น จริง และไม่เท่ากับ 0 ผลต่อในคำาสั่งถัดไป (ในบรรทัดที่ 14) และจนจบโปรแกรม
• จะประมวลผลคำาสั่ง
ในกรณีที่ เงื่อนไขทางเลือก มีค่าเป็น เท็จ และเท่ากับ 0 จากการรันครั้งที่ 2 ตัวแปร y รับค่าจากแป้นพิมพ์ เท่ากับ 25 ทำาให้นิพจน์เปรียบ
• จะไม่ประมวลผลคำาสั่ง เทียบ y == TARGET มีค่าเป็นจริง แล้วฟังก์ชัน printf( ) (ในบรรทัดที่ 13) ถูก
ประมวลผล แล้วประมวลผลต่อในคำาสั่งถัดไปจนจบโปรแกรม