Difference Between if-else and switch
Categories: C language
What is an if-else statement?
An if-else statement in C programming is a conditional statement that executes a different set of statements based on the condition that is true or false. The 'if' block will be executed only when the specified condition is true, and if the specified condition is false, then the else block will be executed.
Syntax of if-else statement is given below:
if(expression)
{
// statements;
}
else
{
// statements;
}
What is a switch statement?
A switch statement is a conditional statement used in C programming to check the value of a variable and compare it with all the cases. If the value is matched with any case, then its corresponding statements will be executed. Each case has some name or number known as the identifier. The value entered by the user will be compared with all the cases until the case is found. If the value entered by the user is not matched with any case, then the default statement will be executed.
switch(expression)
{
case constant 1:
// statements;
break;
case constant 2:
// statements;
break;
case constant n:
// statements;
break;
default:
// statements;
}
Similarity b/w if-else and switch
Both the if-else and switch are the decision-making statements. Here, decision-making statements mean that the output of the expression will decide which statements are to be executed.
If-else - switch
Definition - Depending on the condition in the 'if' statement, 'if' and 'else' blocks are executed. - The user will decide which statement is to be executed.
Expression - It contains either logical or equality expression. - It contains a single expression which can be either a character or integer variable.
Evaluation - It evaluates all types of data, such as integer, floating-point, character or Boolean.It evaluates either an integer, or character.
Sequence of execution - First, the condition is checked. If the condition is true then 'if' block is executed otherwise 'else' blockIt executes one case after another till the break keyword is not found, or the default statement is executed.
Default execution - If the condition is not true, then by default, else block will be executed. - If the value does not match with any case, then by default, default statement is executed.
Editing -Editing is not easy in the 'if-else' statement. - Cases in a switch statement are easy to maintain and modify. Therefore, we can say that the removal or editing of any case will not interrupt the execution of other cases.
Speed -If there are multiple choices implemented through 'if-else', then the speed of the execution will be slow. - If we have multiple choices then the switch statement is the best option as the speed of the execution will be much higher than 'if-else'.