🟢 Beginner · Lesson 12
switch-case Statement
switch Statement का Syntax
switch statement एक multi-way decision statement है। यह एक variable को constant values (cases) की list के साथ match करता है और matching block execute करता है।
Syntax
switch (expression) { case value1: // case 1 का code break; case value2: // case 2 का code break; default: // कोई case match न हो तो }
switch कैसे काम करता है
switch(expression)evaluate करो- Result को हर
casevalue से ऊपर से नीचे compare करो - Match मिले → उस case पर jump करो और execute शुरू
breakमिले तक execute करते रहो- कोई match नहीं →
defaultexecute करो
break का Role
break के बिना execution "fall-through" होती है — यानी अगले case में भी चली जाती है! यह beginners के लिए आम bug है।
⚠️ हमेशा break लिखें!
जब तक intentionally fall-through नहीं चाहिए, हर case के अंत में break; ज़रूर लिखें।
Programs
Day of Week
C Language
int day = 5; switch(day) { case 1: printf("Somvar\\n"); break; case 2: printf("Mangalvar\\n"); break; case 5: printf("Shukravar\\n"); break; case 7: printf("Ravivar\\n"); break; default: printf("Invalid\\n"); }
Shukravar
Calculator Program
C Language
float a = 10, b = 4; char op = '*'; switch(op) { case '+': printf("= %.2f\\n", a+b); break; case '-': printf("= %.2f\\n", a-b); break; case '*': printf("= %.2f\\n", a*b); break; case '/': printf("= %.2f\\n", a/b); break; default: printf("Invalid operator\\n"); }
= 40.00
सारांश
switchexpression को constantcasevalues से match करता हैbreakके बिना fall-through होती है — हमेशा break लिखेंdefaultतब चलता है जब कोई case match नहीं करता- केवल
intऔरcharwork करते हैं — float/double/string नहीं - जब एक variable को many discrete values से check करना हो तो switch use करें
अक्सर पूछे जाने वाले प्रश्न (FAQ)
C में switch statement क्या है?
switch statement किसी variable की value के आधार पर चलाने को एक code block चुनता है। यह variable की कई case labels से तुलना करता है और मेल खाने वाला चलाता है, लंबी if-else श्रृंखला का साफ़ विकल्प देते हुए।switch statement में break क्यों इस्तेमाल होता है?
मेल खाने वाला
case चलने के बाद break switch समाप्त करता है। इसके बिना execution "fall through" होकर आगे के cases भी चलाता रहता है। तो आप आमतौर पर हर case के अंत में break रखते हैं जब तक जानबूझकर fall-through न चाहें।switch में default case क्या है?
default case तब चलता है जब कोई भी दूसरी case label value से मेल न खाए। यह switch के else जैसा काम करता है, आपको अप्रत्याशित या बचे values संभालने देते हुए। यह वैकल्पिक है पर आमतौर पर शामिल करना अच्छी आदत है।C में switch और if-else में क्या अंतर है?
switch एक variable की कई constant values से तुलना करता है और कई निश्चित विकल्पों के लिए अक्सर साफ़ होता है। if-else किसी भी condition की जाँच कर सकता है, ranges और जटिल expressions सहित, तो यह ज़्यादा लचीला है। एक value पर कई equality जाँचों के लिए switch, बाकी सब के लिए if-else।C में switch किन data types का इस्तेमाल कर सकता है?
C
switch integer types और characters के साथ काम करता है, क्योंकि char भीतर से integer है। यह floating-point numbers या strings पर switch नहीं कर सकता, और हर case label एक constant value होनी चाहिए, variable या range नहीं।