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

Which is the best book for understanding concepts of c language?
One highly recommended book for understanding the concepts of the C language is "C Programming Absolute Beginner's Guide (3rd Edition)" by Perry and Miller. This book is well-suited for beginners and provides...
Chetana
0 0
7
What is meant by "bit masking"?
For example if you want to know if third bit is 1 or not for an int x then you can mask all other bits and just check the third one: (n & 0x04) != 0 means 3rd bit is not zero, 0x04 is the bit mask
Kiran
0 0
6
What are the advantages of using C over C++?
C++ is a object oriented programming language
Rekha
0 0
5

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

Ask a Question

Related Lessons

C Program Sample Application
//Standard Library Functions(Header Files used) #include<stdio.h> #include <conio.h> //Main method int main() { // function for clearing screen clrscr(); // function to print the output...

C Program-Vowels and Consonants
/*WAP to print the character entered by user is a vowel or consonant*/ //Header files #include<stdio.h>#include<conio.h> //Main functionvoid main(){ char c; //Function for clearing screen...

4 Things Every Tech Startup Needs to Know About The Coaching Industry
Knowledge on any subject is widely available to those who wish to learn. However, just gathering knowledge from other people doesn’t guarantee results in business. Results come from applying what...

C Program-Error Handling
//Header files #include<stdio.h>#include<conio.h>#include<stdlib.h> //Main function void main(){ int dividend=10; int divisor=0; int quotient; //Function for clearing screen clrscr(); ...

Pointers and References
Are reference and pointers same? No. I have seen this confusion crumbling up among the student from the first day. So better clear out this confusion at thevery beginning. Pointers and reference...

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