When is a "switch" statement better than multiple "if" statements?

Asked by Last Modified  

Follow 1
Answer

Please enter your answer

Tutor

switch statement is generally best to use when you have more than two conditional expressions based on a single variable of numeric type. For instance, rather than the code if (x == 1) printf(“x is equal to one.\n”); else if (x == 2) printf(“x is equal to two.\n”); else if (x ==...
read more
switch statement is generally best to use when you have more than two conditional expressions based on a single variable of numeric type. For instance, rather than the code if (x == 1) printf(“x is equal to one.\n”); else if (x == 2) printf(“x is equal to two.\n”); else if (x == 3) printf(“x is equal to three.\n”); else printf(“x is not equal to one, two, or three.\n”); the following code is easier to read and maintain: switch (x) { case 1: printf(“x is equal to one.\n”); break; case 2: printf(“x is equal to two.\n”); break; case 3: printf(“x is equal to three.\n”); break; default: printf(“x is not equal to one, two, or three.\n”); break; } Notice that for this method to work, the conditional expression must be based on a variable of numeric type in order to use the switch statement. Also, the conditional expression must be based on a single variable. For instance, even though the following if statement contains more than two conditions, it is not a candidate for using a switch statement because it is based on string comparisons and not numeric comparisons: char* name = “Lupto”; if (!stricmp(name, “Isaac”)) printf(“Your name means ‘Laughter’.\n”); else if (!stricmp(name, “Amy”)) printf(“Your name means ‘Beloved’.\n “); else if (!stricmp(name, “Lloyd”)) printf(“Your name means ‘Mysterious’.\n “); else printf(“I haven’t a clue as to what your name means.\n”) read less
Comments

Professional Trainer

In case of we have to check one variable and compare it's value with list of values of same then and then we can use switch case. for example create simple calculator using c programming. we requires one variable for operation like addition, subtraction, multiplication and division. we can tell the...
read more
In case of we have to check one variable and compare it's value with list of values of same then and then we can use switch case. for example create simple calculator using c programming. we requires one variable for operation like addition, subtraction, multiplication and division. we can tell the user to input the value 1 for +, 2 for - , 3 for * and 4 for /. and then we can compare that variable's value to the list of for cases, case 1, case 2, case 3 , case 4 and finally default case if none of other case is matched. We create this program using if...else if statement or switch case. If program like which day is today. then also we can use switch case. 1 for Monday ....7 for Sunday enter your choise compare by using switch(var) to different cases from case 1 to 7 and default. Break statement is always needed while using switch case. if there is no break statement in cases then all cases will be executed. read less
Comments

Training Centre

If you want to test a variable against the single number (i.e. n==1,n==2, n==3 , etc.) rather than a range of numbers (i.e. (n>=1 && n<=10)), then switch statement is a better option.
Comments

Thank You for your question... Switch statement is better than multiple if statements when we are having multiple options for the same variable. Thanks, Team DishaaPro www.dishaapro.com
Comments

Programming Trainer

Most of the time switch is better than if statement in c program as it enhances the time complexity of the program.
Comments

Technology expert

In swich-case ,if the conditions are same we can write one print statement.where as in multiple if though the conditions are same ,we have to write different print for each conditions.
Comments

Unique Coder

A switch statement is generally best to use when you have more than two conditional expressions based on a single variable of numeric type.
Comments

Teacher

If there are so many options to choose.
Comments

Tutor

Both Switch and if performs almost the same function, where both comes under control statements. switch is better if the number of cases is more and distinct.
Comments

J2ee Trainer

Switch statement is most useful when we have multiple conditions on a same variable.But when there are multiple conditions then if else is a better option.
Comments

View 13 more Answers

Related Questions

How can you avoid including a header more than once?
Most common ways, use: #pragma once on top of the each header file (though non standard but most compilers support it) or do the following, if you want to protect abc.h from multiple inclusions then...
Deepak
0 0
7
What is C language used for?
C language is a versatile programming language commonly used for system programming, developing operating systems, embedded systems, and creating various applications ranging from game development to scientific...
Anil
0 0
5
Why is there no C-- language that simplifies the C language?
C++ stands for additional functionality and the original programming language was C. There is no downgraded version of C so there is no C--.
Komal
0 0
7
How do you override a defined macro?
We can use the #ifdef and #undef directive to undefine a previously defined macro.
Sharmistha
What is an rvalue?
Rvalue was added with the C++11 standard. An lvalue is an expression that refers to a memory location and allows us to take the address of that memory location via the & operator. An rvalue is an expression...
Mohd

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Introduction to Programming Languages
What is a Programming Language? A programming language is a formal computer language or constructed language designed to communicate instructions to a machine, particularly a computer. Programming languages...

Basics Of C And C++
C++ is powerful, highly flexible, and adaptable programming language that allows software engineers to organise and process information quickly and effectively. But this high-level language is relatively...

C Program-Temperature [conversion from farenheit to degree celsius]
//WAP to convert temperture from farenheit into degree celsius //Header files#include<stdio.h>#include<conio.h> //Main functrion void main(){ //Variable declaration of type float float...

Some Tricky Questions in C
Can you write two functions in which one executes before main function and other executes after the main function? #pragma startup #pragma exit Where, priority is optional integer value.For user priority...

C++ Program-Working with constant using #define preprocessor
//Header Files #include#include // using #define preprocessor for defining a constant#define len 10#define br 5#define rad 3#define NEWLINE '\n' //Main function void main(){ int area_r; float area_c; //Function...

Recommended Articles

Brilliant Academy is one of the reputed institutes for B.Tech tuition classes. This institute is specialised in delivering quality tuition classes for B.E, Engineering - all streams and Engineering diploma courses. Incorporated in 2012, Brillant Academy is a brainchild of Mr Jagadeesh. The main motto of the academy is to...

Read full article >

Lasya Infotech is a Hyderabad based IT training institute founded in 2016 by O Venkat. Believing in his innovation, passion and persistence and with a diverse blend of experience, he started his brainchild to deliver exemplary professional courses to aspiring candidates by honing their skills. Ever since the institute envisions...

Read full article >

Microsoft Excel is an electronic spreadsheet tool which is commonly used for financial and statistical data processing. It has been developed by Microsoft and forms a major component of the widely used Microsoft Office. From individual users to the top IT companies, Excel is used worldwide. Excel is one of the most important...

Read full article >

Hadoop is a framework which has been developed for organizing and analysing big chunks of data for a business. Suppose you have a file larger than your system’s storage capacity and you can’t store it. Hadoop helps in storing bigger files than what could be stored on one particular server. You can therefore store very,...

Read full article >

Looking for C Language Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you