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

What are the advantages of using C over C++?
C++ is a object oriented programming language
Rekha
0 0
5
How do I write a C program to print the total number of a single-digit prime number using a loop?
Single Digit prime number means number from 0 to 10 which are prime. so write for loop which will iterate from 0 to 10 as the value of i your i is nothing but the number pass the value of i to function...
Momin
0 0
7
How can I develop my C language?
Practice coding: Write code regularly, even if it's small programs. Practice is key to improving. Read books and online tutorials: There are many resources available to learn C. Books like "The C Programming...
Mohit
0 0
5
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
Why do C++ programmers dislike C?
C++ programmers don't dislike C universally; some may find C limiting due to its lack of modern features like object-oriented programming and stricter type safety
Jitender
0 0
6

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

Ask a Question

Related Lessons

Compiler vs Interpreter
Compiler Interpreter Convert all the code into binary format and execute. Convert one statement at a time and execute, then Convert next statement and execute. After conversion, source...

Programming Practice Technique
Any Programming Language required an Algorithm. Algorithm - It is the finite set of instructions in which each and every instruction has the meaning, instructions are not ambiguous and all the instructions...

Find out the Output of the following with reason and get C Language Training fess less by 10%
1. void main() { clrscr(); printf(5+"Beautifull"); getch(); } 2. void main() { int a=50; clrscr(); ...

Why do pointers have a datatype?
Before we start with pointers you must know what is a variable and a datatype. int a; This is the basic line in every program in 'C' . It means that we are asking the compiler to give us 2 bytes of space...

Features Of C Language
Features of C language It is a robust language with rich set of built-in functions and operators that can be used to write any complex program. The C compiler combines the capabilities of an assembly...

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