Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C#-switch-Anweisung

C#-Switch-Anweisung

In diesem Artikel erfahren wir mehr über switch-Anweisungen in C# und wie man sie mit Beispielen verwendet.

Die Switch-Anweisung kann verwendet werden, um die if...else if-Anweisung in C# zu ersetzen. Der Vorteil der switch over if...else if-Anweisung ist, dass die Codes mit switch viel sauberer und lesbarer aussehen.

Die Syntax der switch-Anweisung lautet:

switch (variable/expression)
{
    case value1:
        // Statements executed if expression(or variable) = value1
        break;
    case value2:
        // Statements executed if expression(or variable) = value1
        break;
    ... ... ... 
    ... ... ... 
    default:
        // Statements executed if no case matches
}

Die switch-Anweisung wertet den Ausdruck aus (oder Variable ) und vergleichen Sie seinen Wert mit den Werten (oder dem Ausdruck) jedes Falls (value1 , Wert2 , …). Wenn es den übereinstimmenden Wert findet, werden die Anweisungen in diesem Fall ausgeführt.

Wenn jedoch keiner der obigen Fälle mit dem Ausdruck übereinstimmt, werden die Anweisungen in default Block ausgeführt wird. Die Standardanweisung am Ende von switch ähnelt dem else-Block in der if else-Anweisung.

Ein Problem mit der switch-Anweisung ist jedoch, dass, wenn der passende Wert gefunden wird, alle nachfolgenden Anweisungen bis zum Ende des switch-Blocks ausgeführt werden.

Um dies zu vermeiden, verwenden wir break Erklärung am Ende jedes Falles. Die break-Anweisung hält das Programm davon ab, nicht übereinstimmende Anweisungen auszuführen, indem die Ausführung der switch-Anweisung beendet wird.

Um mehr über break-Anweisungen zu erfahren, besuchen Sie C# break-Anweisung .


Beispiel 1:C#-Switch-Anweisung

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;
            }
        }
    }
}

Wenn wir das Programm ausführen, lautet die Ausgabe:

Enter an alphabet
X
Not a vowel

In diesem Beispiel wird der Benutzer aufgefordert, ein Alphabet einzugeben. Das Alphabet wird mit ToLower() in Kleinbuchstaben umgewandelt Methode, wenn sie in Großbuchstaben geschrieben ist.

Dann prüft die switch-Anweisung, ob das vom Benutzer eingegebene Alphabet a, e, i, o or u ist .

Wenn einer der Fälle zutrifft, Vowel wird gedruckt, andernfalls geht die Steuerung zum Standardblock und Not a vowel wird als Ausgabe ausgegeben.

Da die Ausgabe für alle Vokale gleich ist, können wir die Fälle wie folgt verbinden:


Beispiel 2:C# switch-Anweisung mit gruppierten Fällen

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;
            }
        }
    }
}

Die Ausgabe beider Programme ist gleich. Im obigen Programm geben alle Vokale die Ausgabe Vowel aus und bricht die switch-Anweisung ab.

Obwohl die switch-Anweisung den Code sauberer aussehen lässt als die if...else if-Anweisung, ist switch auf die Arbeit mit begrenzten Datentypen beschränkt. Switch-Anweisung in C# funktioniert nur mit:


Beispiel 3:Einfaches Taschenrechnerprogramm mit C#-switch-Anweisung

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;
                     
            }
        }
    }
}

Wenn wir das Programm ausführen, lautet die Ausgabe:

Enter first number: -13.11
Enter second number: 2.41
Enter operator (+, -, *, /): *
-13.11 * 2.41 = -31.5951

Das obige Programm nimmt zwei Operanden und einen Operator als Eingabe vom Benutzer und führt die Operation basierend auf dem Operator aus.

Die Eingaben werden dem Benutzer mit dem ReadLine() entnommen und Read() Methode. Weitere Informationen finden Sie unter Grundlegende C#-Eingabe und -Ausgabe.

Das Programm verwendet die Switch-Case-Anweisung zur Entscheidungsfindung. Alternativ können wir if-else if Ladder verwenden, um dieselbe Operation auszuführen.


C Sprache

  1. Schaltung mit Schalter
  2. Kommutierende Diode
  3. Schaltertypen
  4. Kontaktieren Sie "Bounce"
  5. Multimeter
  6. C# break-Anweisung
  7. C#-Continue-Anweisung
  8. Python-pass-Anweisung
  9. C++ Switch Case-Anweisung mit BEISPIEL
  10. C - Grundlegende Syntax