:
switch case 


switch case เป็นอีกหนึ่งรูปแบบของการเลือกทำคำสั่งต่างๆ
รูปแบบคำสั่ง switch case เป็นดังนี้
switch (integer_expression)
                                            {
                                                case     constant_1 :
                                                             statement_1;
                                                             break;
                                                case     constant_2 :
                                                             statement_2;
                                                             break;
                                                case     constant_3 :
                                                             statement_3;
                                                             break;

                                                default :
                                                            statement;
                                            }
Flowchart แสดงการทำงาน ของ switch case

ผลการตรวจสอบเงื่อนไข จะขึ้นอยู่กับค่า integer_expression ถ้าเงื่อนไขที่ตรวจสอบอยู่ภายในเงื่อนไขที่กำหนด ก็จะทำงานชุดคำสั่งภายใน case ของ constant นั้น แต่ถ้าหากไม่พบเงื่อนไขตามแต่ละ case ที่กำหนดไว้เลย ก็จะไปทำชุดคำสั่งที่ default แทน อย่างไรก็ตามเงื่อนไขของแต่ละ case นั้นควรบรรจุคำสั่ง break เข้าไปด้วยทั้งนี้เพื่อป้องกันมิให้ตรวจสอบเงื่อนไขถัดไป ส่วนกรณี default นั้นไม่จำเป็นต้องมีคำสั่ง break

ตัวอย่าง Switch Case 
จงเขียนโปรแกรมแปลงตัวเลขโดด 0 - 3 ที่ผู้ใช้ป้อนเข้ามา ให้เป็นตัวหนังสือ Number to word 
Algorithm (Number to Word)
เริ่มต้น
รับค่าตัวเลขมาเก็บไว้ในตัวแปล m
ตรวจเช็คเงื่อนไข m ตรงกับ เคสใด 
หาก
ตรงกับเคส 3 จริง ให้แสดงข้อความว่า "Three" จากนั้นจบการทำงาน
ตรงกับเคส 2 จริง ให้แสดงข้อความว่า "Two" จากนั้นจบการทำงาน
ตรงกับเคส 1 จริง ให้แสดงข้อความว่า "One" จากนั้นจบการทำงาน
ไม่ตรงกับเคสใดเลย ให้แสดงข้อความว่า "Error.Input Number 0 to 3 only" จากนั้นจบการทำงาน
จบการทำงาน

Program Flowchart (Number to Word)


Source Code (Number to Word)
#include <stdio.h>
int main()
{
    int m;
    printf("Please input Number (0 - 3): ");
    scanf("%d",&m);
    switch (m){
        case 0:  printf("%d -> Zero\n" , m); break;
        case 1:  printf("%d -> One\n" , m); break;
        case 2:  printf("%d -> Two\n" , m); break;
        case 3:  printf("%d -> Three\n" , m); break;
    default: printf("Error. Input Number 0 to 3 only.\n");
    }
    return 0;
}
     
Refer: Link1 Link2