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 should I learn first, C or UNIX?
C is invented with a purpose of building UNIX operating system. So, you should go with C first and then you can start to work on UNIX/LINUX
Profile Photo
Tushar
0 0
View Comments6
Is the C language required to learn Java?
No, learning the C language is not a strict requirement for learning Java. While C and Java share some syntactical similarities, they are distinct programming languages with different paradigms. Java was...
Profile Photo
Akhilesh
0 0
View Comments7
Do array subscripts always start with zero?
It purely depends on the programming language. C, C#, Java all provide array indices starting from zero (0). COBOL, FORTRAN, ALGOL etc. languages provide array indices starting from 1.
Profile Photo
Avishkar
What is a calling function in C?
A function call is an expression that includes the name of the function being called or the value of a function pointer and, optionally, the arguments being passed to the function
Profile Photo
Gowre
0 0
View Comments5

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...
Profile Photo

C and C++ programming with memory level debugging
Understanding C and C++ programming by using memory level debugging. Step 1: Understand the Memory map of C executable Step 2: Start memory level debugging using popular IDE Step 3: Find the memory...
Profile Photo

Design your own Mouse Driver in C Language
Mouse Driver (msdrv.h) #include #include union REGS i,o; restrictmouseptr(int x1, int y1, int x2, int y2) { i.x.ax=7; i.x.cx=x1; i.x.dx=x2; ...
Profile Photo

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...
Profile Photo

Software Development Training In Jaipur
Satyam Web Solution provides website designing &development and software designing &development training in Jaipur for various stream’s students. MCA 6 month Industrial Training/Internship B....
Profile Photo

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