आज आप सीखने वाले हैं, Switch Case in C Language in Hindi में। C में Switch case सीखना हर उस beginner के लिए जरूरी है जो C programming में नये हैं । यह एक ऐसा powerful control flow statement है जो आपके code को न सिर्फ साफ बनाता है बल्कि उसे पढ़ना और समझना भी आसान कर देता है।
इस blog post में हम switch case को बिल्कुल zero से समझेंगे — इसका syntax क्या होता है, यह कैसे काम करता है, और real-life जैसे examples के जरिए इसे practically कैसे use किया जाता है। आप यह भी जानेंगे कि break और default keywords का क्या role होता है, और switch case को if-else से बेहतर कब माना जाता है।
चाहे आप school student हों, college में C programming पढ़ रहे हों, या खुद से coding सीख रहे हों — यह guide आपके लिए एकदम सही है। इसे पूरा पढ़ने के बाद आप खुद switch case वाले programs लिख सकेंगे और इसे अपने projects में confidently इस्तेमाल कर पाएंगे।
Table of Contents
Switch Case in C Language in Hindi – आसान भाषा में समझें
C language में जब हमें किसी variable की value के आधार पर अलग-अलग काम करने होते हैं, तब हम switch case statement का उपयोग करते हैं। यह एक multi-way branching statement है, यानी एक जगह से program कई अलग-अलग रास्तों पर जा सकता है।
सोचिए आपने एक menu बनाया है — 1 दबाओ तो tea मिलेगी, 2 दबाओ तो coffee, 3 दबाओ तो juice। इस situation में switch case सबसे perfect tool है।
Switch Case का Syntax
switch (expression) {
case value1:
// code block
break;
case value2:
// code block
break;
default:
// code block
}
यहाँ:
- switch: के अंदर एक expression या variable होता है
- case: उस variable की possible values को define करता है
- break: case को terminate करता है
- default: तब run होता है जब कोई भी case match नहीं होता
Switch Case कैसे काम करता है?
जब program switch statement पर पहुँचता है, तो वह expression की value evaluate करता है। फिर उस value को एक-एक करके सभी case values से compare करता है। जिस case की value match होती है, उस case का code execute होता है। अगर कोई भी case match नहीं होता, तो default block चलता है।
एक बात याद रखें — अगर break नहीं लिखा, तो program अगले case में भी घुस जाएगा, जिसे “fall-through” कहते हैं।
Switch Case Flowchart in C Language
अब चलिये चलते हैं, Switch Case को Flowchart के जरिये समझते हैं :

Switch Case का पहला Example – Simple Calculator
#include <stdio.h>
int main() {
int choice;
float a, b;
// Taking user input
printf("Enter first number: ");
scanf("%f", &a);
printf("Enter second number: ");
scanf("%f", &b);
// Menu
printf("\n1. Addition\n");
printf("2. Subtraction\n");
printf("3. Multiplication\n");
printf("4. Division\n");
printf("Enter your choice: ");
scanf("%d", &choice);
// Switch Case
switch (choice) {
case 1:
printf("Addition = %.2f\n", a + b);
break;
case 2:
printf("Subtraction = %.2f\n", a - b);
break;
case 3:
printf("Multiplication = %.2f\n", a * b);
break;
case 4:
if (b != 0)
printf("Division = %.2f\n", a / b);
else
printf("Division by zero is not allowed!\n");
break;
default:
printf("Invalid choice!\n");
}
return 0;
}
यह example switch case in C language in Hindi में सीखने के लिए बिल्कुल perfect है क्योंकि यह real-life situation को represent करता है।
Break Statement का महत्व
break statement switch case में बेहद जरूरी होता है। अगर आप break नहीं लिखते, तो matched case के बाद वाले सभी cases भी execute हो जाते हैं — चाहे वो match करें या नहीं।
Break के बिना क्या होता है — Example देखें:
#include <stdio.h>
int main() {
int x = 2;
switch (x) {
case 1:
printf("Case 1\n");
case 2:
printf("Case 2\n");
case 3:
printf("Case 3\n");
default:
printf("Default\n");
}
return 0;
}
देखा? x की value 2 थी, फिर भी Case 3 और Default भी print हो गए क्योंकि break नहीं था। इसीलिए हमेशा break लगाएं जब तक जानबूझकर fall-through न चाहिए हो।
Default Case क्या होता है?
default case एक तरह का safety net होता है। जब user कोई ऐसी value enter करे जो किसी भी case में match नहीं करती, तो default block execute होता है। यह optional है, लेकिन इसे लिखना हमेशा अच्छी programming practice मानी जाती है।
#include <stdio.h>
int main() {
int day = 8;
switch (day) {
case 1: printf("Monday\n"); break;
case 2: printf("Tuesday\n"); break;
case 3: printf("Wednesday\n"); break;
default: printf("Invalid day!\n");
}
return 0;
}
Character के साथ Switch Case
Switch case सिर्फ integers के साथ नहीं, characters के साथ भी काम करता है।
#include <stdio.h>
int main() {
char grade;
printf("Enter your grade (A/B/C/D): ");
scanf("%c", &grade);
switch (grade) {
case 'A':
printf("Excellent!\n");
break;
case 'B':
printf("Very Good!\n");
break;
case 'C':
printf("Average!\n");
break;
case 'D':
printf("Needs Improvement!\n");
break;
default:
printf("Invalid grade!\n");
}
return 0;
}
Switch Case vs If-Else – कौन बेहतर है?
यह एक बहुत common सवाल है। दोनों की अपनी जगह है, लेकिन कुछ situations में switch case ज्यादा फायदेमंद होता है।
| Switch Case कब use करें | If-Else कब use करें |
|---|---|
| जब एक ही variable की multiple fixed values check करनी हों | जब range-based conditions हों (जैसे: अगर marks > 80) |
| जब conditions की संख्या ज्यादा हो (5 से अधिक) | जब multiple variables check करने हों |
| जब code को ज्यादा readable बनाना हो | जब conditions complex हों (AND, OR का use) |
Switch case code को ज्यादा clean और fast बनाता है जब fixed values के साथ काम करना हो।
Nested Switch Case – Switch के अंदर Switch
C language में switch के अंदर एक और switch लिख सकते हैं, जिसे nested switch कहते हैं।
#include <stdio.h>
int main() {
int dept = 1, role = 2;
switch (dept) {
case 1:
printf("Department: Engineering\n");
switch (role) {
case 1:
printf("Role: Junior Developer\n");
break;
case 2:
printf("Role: Senior Developer\n");
break;
}
break;
case 2:
printf("Department: Marketing\n");
break;
}
return 0;
}
Switch Case में Multiple Cases एक साथ
कभी-कभी दो या दो से अधिक cases का same output होता है। ऐसे में हम उन्हें stack करके लिख सकते हैं।
#include <stdio.h>
#include <stdio.h>
int main() {
int month = 4;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("This month has 31 days\n");
break;
case 4:
case 6:
case 9:
case 11:
printf("This month has 30 days\n");
break;
case 2:
printf("This month has 28 or 29 days\n");
break;
default:
printf("Invalid month!\n");
}
return 0;
}
यह technique switch case in C language में बहुत useful होती है जब multiple values का एक ही result हो।
Switch Case लिखते वक्त ध्यान रखने वाली बातें
C programming में switch case use करते समय कुछ important rules याद रखें:
| जो करना चाहिए | जो नहीं करना चाहिए |
|---|---|
| हमेशा default case लिखें | Duplicate case values नहीं लिखनी चाहिए |
| हर case के बाद break जरूर लगाएं (जब तक fall-through की जरूरत न हो) | Floating point numbers (जैसे 3.14) switch expression में use नहीं होते |
| Cases को logical order में लिखें | Strings directly switch में use नहीं होती (C में) |
| Code को indented रखें ताकि readable हो | Case values runtime पर बदल नहीं सकतीं, वो constant होनी चाहिए |
एक Complete Real-World Example – ATM Menu
#include <stdio.h>
int main() {
int option;
float balance = 5000.00;
printf("=== ATM Menu ===\n");
printf("1. Balance Check\n");
printf("2. Cash Withdraw\n");
printf("3. Mini Statement\n");
printf("4. Exit\n");
printf("Choose an option: ");
scanf("%d", &option);
switch (option) {
case 1:
printf("Your balance: Rs. %.2f\n", balance);
break;
case 2:
printf("Withdrawal feature coming soon!\n");
break;
case 3:
printf("Last transaction: Rs. 500 debit\n");
break;
case 4:
printf("Thank you! Visit again.\n");
break;
default:
printf("Invalid option! Please try again.\n");
}
return 0;
}
