Switch Statement in C++ Last Updated : 16 May, 2025 Comments Improve Suggest changes Like Article Like Report Try it on GfG Practice In C++, the switch statement is a flow control statement that is used to execute the different blocks of statements based on the value of the given expression. It is an alternative to the long if-else-if ladder which provides an easy way to execute different parts of code based on the value of the expression. Syntax C++ switch (expression) { case value_1: // code to be executed. break; case value_2: // code to be executed; break; ..... ..... default: // code to be executed; } In the above syntax:expression: Variable or any expression that evaluates to a constant value.case and values: Each value such as value_1, value_2, etc. is a possible value that the expression might result. If the expression matches a case value, the code inside that case block will be executed.break: After a case block executes, the break statement is used to exit the switch statement. Without the break statement, the program would continue executing the next case blocks even if they match or not.default: The default case is optional and is executed only if no other case matches. Position of the default case doesn't affect the behaviour of the switch statement.Example: C++ #include <iostream> using namespace std; int main() { // Variable to the used as switch expression char x = 'A'; // Switch statement with three cases switch (x) { case 'A': cout << "A"; break; case 'B': cout << "B"; break; default: cout << "Other than A and B"; break; } return 0; } OutputAFlowchart of Switch StatementFlowchart of the switch statement in C++Working of switch StatementThe working of the switch statement in C++ is quite similar to C. Here's how it works:Evaluate the switch expression: The expression provided in the switch statement is evaluated. Match with case values: The evaluated value is compared with the values specified in each case block.Execute the matching case block:If a matching case value is found, the corresponding block of code is executed.If no matching case is found, the default case, if provided, is executed.Use of the break keyword:If the break keyword is used in a case block, the program exits the switch statement, and the flow continues after the switch.If there is no break, the program will continue executing subsequent case blocks.Proceed after the switch: After the switch statement completes, the statements following it are executed.Rules of the switch StatementWhen using the switch statement in C++, there are a few rules to keep in mind:The case values must be of int or char type.You can have as many case blocks as needed.Duplicate case values are not allowed.A break statement is optional in each case.ExamplesThe below program demonstrates the uses of switch statement in C++ programs:Print Day Name C++ #include <iostream> using namespace std; int main() { int day = 4; // Determine the day name // using switch switch (day) { case 1: cout << "Monday"; break; case 2: cout << "Tuesday"; break; case 3: cout << "Wednesday"; break; case 4: cout << "Thursday"; break; case 5: cout << "Friday"; break; case 6: cout << "Saturday"; break; case 7: cout << "Sunday"; break; default: cout << "Invalid day number"; break; } return 0; } OutputThursdayIn the above example, we printed the day name using a switch statement. Similarly, we can write a program to create a simple calculator using a switch statement to perform basic arithmetic operations.Simple Calculator using switch C++ #include <iostream> #include <stdlib.h> using namespace std; int main() { // Switch variable for // operation choice char c; // Operands int x, y; cout << "Enter the two numbers: "; cin >> x >> y; cout << "Enter the Operator (+,-,*,/)\nEnter any other to " "exit\n"; cin >> c; // switch case with operation for each operator switch (c) { case '+': cout << x << " + " << y << " = " << x + y << endl; break; case '-': cout << x << " - " << y << " = " << x - y << endl; break; case '*': cout << x << " * " << y << " = " << x * y << endl; break; case '/': cout << x << " / " << y << " = " << x / y << endl; break; default: printf("Exiting\n"); } return 0; } OutputEnter the two numbers: 10 2Enter the Operator (+,-,*,/)Enter any other to exit+10 + 2 = 12Nested Switch StatementsC++ allows nested switch statements, meaning we can place one switch inside another. However, this is generally avoided as it can make the program more complex and harder to read.Switch vs if else if Following are the main differences between switch and if else if ladder in C++:switchif else ifIt executes the different cases on the basis of the value of the switch variable.It executes the different blocks based on the condition specified.It can only evaluate the int or char type expressions.It can evaluate any type of expression.Faster and easier to read for a large number of conditions.It can get messy when there are lots of conditions. Comment More infoAdvertise with us Next Article Jump statements in C++ kartik Follow Improve Article Tags : C++ CPP-Basics Practice Tags : CPP Similar Reads C++ Tutorial | Learn C++ Programming C++ is a popular programming language that was developed as an extension of the C programming language to include OOPs programming paradigm. Since then, it has become foundation of many modern technologies like game engines, web browsers, operating systems, financial systems, etc.Features of C++Why 5 min read Setting up C++ Development Environment C++ is a general-purpose programming language and is widely used nowadays for competitive programming. It has imperative, object-oriented, and generic programming features. C++ runs on lots of platforms like Windows, Linux, Unix, Mac, etc. Before we start programming with C++. We will need an enviro 8 min read Writing First C++ Program - Hello World Example The "Hello World" program is the first step towards learning any programming language and is also one of the most straightforward programs you will learn. It is the basic program that demonstrates the working of the coding process. All you have to do is display the message "Hello World" on the outpu 4 min read C++ Variables In C++, variable is a name given to a memory location. It is the basic unit of storage in a program. The value stored in a variable can be accessed or changed during program execution.Creating a VariableCreating a variable and giving it a name is called variable definition (sometimes called variable 4 min read C++ Data Types Data types specify the type of data that a variable can store. Whenever a variable is defined in C++, the compiler allocates some memory for that variable based on the data type with which it is declared as every data type requires a different amount of memory.C++ supports a wide variety of data typ 7 min read Operators in C++ C++ operators are the symbols that operate on values to perform specific mathematical or logical computations on given values. They are the foundation of any programming language.Example:C++#include <iostream> using namespace std; int main() { int a = 10 + 20; cout << a; return 0; }Outpu 9 min read Basic Input / Output in C++ In C++, input and output are performed in the form of a sequence of bytes or more commonly known as streams.Input Stream: If the direction of flow of bytes is from the device (for example, Keyboard) to the main memory then this process is called input.Output Stream: If the direction of flow of bytes 5 min read Decision Making in C++Decision Making in C (if , if..else, Nested if, if-else-if )In C, programs can choose which part of the code to execute based on some condition. This ability is called decision making and the statements used for it are called conditional statements. These statements evaluate one or more conditions and make the decision whether to execute a block of code or n 7 min read C++ if StatementThe C++ if statement is the most simple decision-making statement. It is used to decide whether a certain statement or block of statements will be executed or not executed based on a certain condition. Let's take a look at an example:C++#include <iostream> using namespace std; int main() { int 3 min read C++ if else StatementThe if statement alone tells us that if a condition is true it will execute a block of statements and if the condition is false, it wonât. But what if we want to do something else if the condition is false. Here comes the C++ if else statement. We can use the else statement with if statement to exec 3 min read C++ if else if LadderIn C++, the if-else-if ladder helps the user decide from among multiple options. The C++ if statements are executed from the top down. As soon as one of the conditions controlling the if is true, the statement associated with that if is executed, and the rest of the C++ else-if ladder is bypassed. I 3 min read C++ Nested if-else StatementNested if-else statements are those statements in which there is an if statement inside another if else. We use nested if-else statements when we want to implement multilayer conditions (condition inside the condition inside the condition and so on). C++ allows any number of nesting levels.Let's tak 3 min read Switch Statement in C++In C++, the switch statement is a flow control statement that is used to execute the different blocks of statements based on the value of the given expression. It is an alternative to the long if-else-if ladder which provides an easy way to execute different parts of code based on the value of the e 5 min read Jump statements in C++Jump statements are used to manipulate the flow of the program if some conditions are met. It is used to terminate or continue the loop inside a program or to stop the execution of a function.In C++, there is four jump statement:Table of Contentcontinue Statementbreak Statementreturn Statementgoto S 4 min read C++ LoopsC++ LoopsIn C++ programming, sometimes there is a need to perform some operation more than once or (say) n number of times. For example, suppose we want to print "Hello World" 5 times. Manually, we have to write cout for the C++ statement 5 times as shown.C++#include <iostream> using namespace std; int 7 min read for Loop in C++In C++, for loop is an entry-controlled loop that is used to execute a block of code repeatedly for the given number of times. It is generally preferred over while and do-while loops in case the number of iterations is known beforehand.Let's take a look at an example:C++#include <bits/stdc++.h 6 min read C++ While LoopIn C++, the while loop is an entry-controlled loop that repeatedly executes a block of code as long as the given condition remains true. Unlike the for loop, while loop is used in situations where we do not know the exact number of iterations of the loop beforehand as the loop execution is terminate 3 min read C++ do while LoopIn C++, the do-while loop is an exit-controlled loop that repeatedly executes a block of code at least once and continues executing as long as a given condition remains true. Unlike the while loop, the do-while loop guarantees that the loop body will execute at least once, regardless of whether the 4 min read Range-Based for Loop in C++In C++, the range-based for loop introduced in C++ 11 is a version of for loop that is able to iterate over a range. This range can be anything that is iteratable, such as arrays, strings and STL containers. It provides a more readable and concise syntax compared to traditional for loops.Let's take 3 min read Functions in C++ A function is a building block of C++ programs that contains a set of statements which are executed when the functions is called. It can take some input data, performs the given task, and return some result. A function can be called from anywhere in the program and any number of times increasing the 9 min read Like