Instrukcja C ++ switch ... case (z przykładami)

W tym samouczku dowiemy się o instrukcji switch i jej działaniu w programowaniu w C ++ na podstawie kilku przykładów.

switchZestawienie pozwala nam wykonać blok kodu spośród wielu alternatyw.

Składnia switchinstrukcji w C ++ to:

 switch (expression) ( case constant1: // code to be executed if // expression is equal to constant1; break; case constant2: // code to be executed if // expression is equal to constant2; break;… default: // code to be executed if // expression doesn't match any constant )

Jak działa instrukcja switch?

Wartość expressionjest oceniana raz i porównywana z wartościami każdej caseetykiety.

  • Jeśli istnieje dopasowanie, wykonywany jest odpowiedni kod po dopasowaniu etykiety. Na przykład, jeśli wartość zmiennej jest równa constant2, kod po case constant2:jest wykonywany do momentu breaknapotkania instrukcji.
  • Jeśli nie ma dopasowania, default:wykonywany jest kod po .

Uwaga : to samo możemy zrobić z if… else… ifdrabiną. Jednak składnia switchinstrukcji jest bardziej przejrzysta i dużo łatwiejsza do czytania i pisania.

Schemat blokowy instrukcji switch

Schemat blokowy instrukcji przełącznika C ++… case

Przykład: Utwórz kalkulator za pomocą instrukcji switch

 // Program to build a simple calculator using switch Statement #include using namespace std; int main() ( char oper; float num1, num2; cout <> oper; cout << "Enter two numbers: " <> num1>> num2; switch (oper) ( case '+': cout << num1 << " + " << num2 << " = " << num1 + num2; break; case '-': cout << num1 << " - " << num2 << " = " << num1 - num2; break; case '*': cout << num1 << " * " << num2 << " = " << num1 * num2; break; case '/': cout << num1 << " / " << num2 << " = " << num1 / num2; break; default: // operator is doesn't match any case constant (+, -, *, /) cout << "Error! The operator is not correct"; break; ) return 0; )

Wyjście 1

 Wpisz operator (+, -, *, /): + Wpisz dwie liczby: 2,3 4,5 2,3 + 4,5 = 6,8

Wyjście 2

 Wpisz operator (+, -, *, /): - Wpisz dwie liczby: 2,3 4,5 2,3 - 4,5 = -2,2

Wyjście 3

 Wpisz operator (+, -, *, /): * Wpisz dwie liczby: 2,3 4,5 2,3 * 4,5 = 10,35

Wyjście 4

 Podaj operator (+, -, *, /): / Podaj dwie liczby: 2,3 4,5 2,3 / 4,5 = 0,511111

Wyjście 5

Wpisz operator (+, -, *, /):? Wpisz dwie liczby: 2.3 4.5 Błąd! Operator nie jest poprawny.

W powyższym programie używamy switch… caseinstrukcji do wykonywania dodawania, odejmowania, mnożenia i dzielenia.

Jak działa ten program

  1. Najpierw zachęcamy użytkownika do wprowadzenia żądanego operatora. Te dane wejściowe są następnie przechowywane w charzmiennej o nazwie oper.
  2. Następnie zachęcamy użytkownika do wprowadzenia dwóch liczb, które są przechowywane w zmiennych typu float num1 i num2.
  3. switchOświadczenie jest następnie wykorzystywany do sprawdzania operatora wprowadzoną przez użytkownika:
    • Jeśli użytkownik wejdzie +, dodawanie jest wykonywane na liczbach.
    • Jeśli użytkownik wejdzie -, odejmie się liczby.
    • Jeśli użytkownik wejdzie *, mnożenie jest wykonywane na liczbach.
    • Jeśli użytkownik wejdzie /, następuje dzielenie liczb.
    • Jeśli użytkownik wprowadzi inny znak, wydrukowany zostanie kod domyślny.

Zwróć uwagę, że breakinstrukcja jest używana wewnątrz każdego casebloku. To kończy switchinstrukcję.

Jeśli breakinstrukcja nie jest używana, casewykonywane są wszystkie przypadki po poprawnej .

Interesujące artykuły...