C # स्विच स्टेटमेंट (उदाहरणों के साथ)

इस लेख में, हम C # में स्विच स्टेटमेंट के बारे में और उदाहरण के साथ उनका उपयोग करने के तरीके के बारे में जानेंगे।

स्विच स्टेटमेंट का इफ़ेक्ट… और नहीं तो स्टेटमेंट # C में दिया जा सकता है। स्विच का उपयोग करने का लाभ अगर … और यदि कथन कोड है तो स्विच के साथ बहुत क्लीनर और पठनीय लगेगा।

स्विच स्टेटमेंट का सिंटैक्स है:

 स्विच (वैरिएबल / एक्सप्रेशन) (केस वैल्यू 1: // एक्सप्लेनेश (या वेरिएबल) = वैल्यू 1 ब्रेक; केस वैल्यू 2: // एक्सटर्नल किए गए स्टेटमेंट यदि एक्सप्रेशन (या वेरिएबल) = वैल्यू 1 ब्रेक …? … … … … डिफॉल्ट: / / यदि कोई मामले से मेल नहीं खाते तो कथन निष्पादित किए जाते हैं) 

स्विच स्टेटमेंट अभिव्यक्ति (या चर) का मूल्यांकन करता है और प्रत्येक मामले के मान (या अभिव्यक्ति) के साथ इसके मूल्य की तुलना करता है (value1, value2,…)। जब यह मिलान मूल्य पाता है, तो उस मामले के अंदर दिए गए कथनों को निष्पादित किया जाता है।

लेकिन, यदि उपरोक्त मामलों में से कोई भी अभिव्यक्ति से मेल नहीं खाता है, तो defaultब्लॉक के अंदर दिए गए कथनों को निष्पादित किया जाता है। स्विच के अंत में डिफ़ॉल्ट स्टेटमेंट अन्य स्टेटमेंट के ब्लॉक के समान है।

हालांकि स्विच स्टेटमेंट के साथ एक समस्या है, जब मिलान मूल्य पाया जाता है, तो यह स्विच ब्लॉक के अंत तक इसके बाद के सभी बयानों को निष्पादित करता है।

इससे बचने के लिए, हम breakप्रत्येक मामले के अंत में कथन का उपयोग करते हैं। ब्रेक स्टेटमेंट प्रोग्राम को स्विच स्टेटमेंट के निष्पादन को समाप्त करके गैर-मिलान वाले बयानों को निष्पादित करने से रोकता है।

ब्रेक स्टेटमेंट के बारे में अधिक जानने के लिए, C # ब्रेक स्टेटमेंट पर जाएँ।

उदाहरण 1: C # स्विच स्टेटमेंट

 using System; namespace Conditional ( class SwitchCase ( public static void Main(string() args) ( char ch; Console.WriteLine("Enter an alphabet"); ch = Convert.ToChar(Console.ReadLine()); switch(Char.ToLower(ch)) ( case 'a': Console.WriteLine("Vowel"); break; case 'e': Console.WriteLine("Vowel"); break; case 'i': Console.WriteLine("Vowel"); break; case 'o': Console.WriteLine("Vowel"); break; case 'u': Console.WriteLine("Vowel"); break; default: Console.WriteLine("Not a vowel"); break; ) ) ) ) 

जब हम प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 एक वर्णमाला X दर्ज करें एक स्वर नहीं 

इस उदाहरण में, उपयोगकर्ता को एक वर्णमाला दर्ज करने के लिए कहा जाता है। ToLower()यदि यह अपरकेस में है तो वर्णमाला को विधि का उपयोग करके लोअरकेस में बदल दिया जाता है।

फिर, स्विच स्टेटमेंट जांचता है कि उपयोगकर्ता द्वारा दर्ज की गई वर्णमाला किसी की है या नहीं a, e, i, o or u

यदि मामले में से एक मेल खाता है, Vowelतो मुद्रित किया जाता है अन्यथा नियंत्रण डिफ़ॉल्ट ब्लॉक में जाता है और Not a vowelआउटपुट के रूप में मुद्रित होता है।

चूंकि, सभी स्वरों के लिए आउटपुट समान हैं, इसलिए हम निम्न मामलों में शामिल हो सकते हैं:

उदाहरण 2: समूहबद्ध मामलों के साथ C # स्विच स्टेटमेंट

 using System; namespace Conditional ( class SwitchCase ( public static void Main(string() args) ( char ch; Console.WriteLine("Enter an alphabet"); ch = Convert.ToChar(Console.ReadLine()); switch(Char.ToLower(ch)) ( case 'a': case 'e': case 'i': case 'o': case 'u': Console.WriteLine("Vowel"); break; default: Console.WriteLine("Not a vowel"); break; ) ) ) ) 

दोनों कार्यक्रमों का आउटपुट समान है। उपरोक्त कार्यक्रम में, सभी स्वर Vowelस्विच स्टेटमेंट से आउटपुट और ब्रेक को प्रिंट करते हैं ।

हालांकि स्विच स्टेटमेंट कोड को क्लीनर की तरह बनाता है यदि … और यदि स्टेटमेंट, तो स्विच सीमित डेटा प्रकारों के साथ काम करने के लिए प्रतिबंधित है। C # में स्विच स्टेटमेंट केवल साथ काम करता है:

  • आदिम डेटा प्रकार: बूल, चार और अभिन्न प्रकार
  • Enumerated Types (Enum)
  • स्ट्रिंग क्लास
  • उपरोक्त डेटा प्रकारों के अशक्त प्रकार

उदाहरण 3: सी # स्विच स्टेटमेंट का उपयोग करके सरल कैलकुलेटर प्रोग्राम

 using System; namespace Conditional ( class SwitchCase ( public static void Main(string() args) ( char op; double first, second, result; Console.Write("Enter first number: "); first = Convert.ToDouble(Console.ReadLine()); Console.Write("Enter second number: "); second = Convert.ToDouble(Console.ReadLine()); Console.Write("Enter operator (+, -, *, /): "); op = (char)Console.Read(); switch(op) ( case '+': result = first + second; Console.WriteLine("(0) + (1) = (2)", first, second, result); break; case '-': result = first - second; Console.WriteLine("(0) - (1) = (2)", first, second, result); break; case '*': result = first * second; Console.WriteLine("(0) * (1) = (2)", first, second, result); break; case '/': result = first / second; Console.WriteLine("(0) / (1) = (2)", first, second, result); break; default: Console.WriteLine("Invalid Operator"); break; ) ) ) ) 

जब हम प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 पहला नंबर दर्ज करें: -13.11 दूसरी संख्या दर्ज करें: 2.41 ऑपरेटर (+, -, *, /) दर्ज करें: * -13.11 * 2.41 = -31.5951 

उपरोक्त कार्यक्रम उपयोगकर्ता से इनपुट के रूप में दो ऑपरेंड और एक ऑपरेटर लेता है और ऑपरेटर के आधार पर ऑपरेशन करता है।

उपयोगकर्ता ReadLine()और Read()विधि का उपयोग करके इनपुट लिया जाता है । अधिक जानने के लिए, C # मूल इनपुट और आउटपुट पर जाएं।

कार्यक्रम निर्णय लेने के लिए स्विच केस स्टेटमेंट का उपयोग करता है। वैकल्पिक रूप से, हम एक और ऑपरेशन करने के लिए यदि सीढ़ी का उपयोग करते हैं तो हम कर सकते हैं।

दिलचस्प लेख...