Simple Switch Statement in C
Introduction
In C programming, the switch
statement allows you to make decisions based on different values of a single variable. It’s an alternative to using multiple if-else
statements, making the code cleaner and easier to read. In this post, we’ll break down the switch
statement and go through a simple example to help you understand how it works.
What is a Switch
Statement?
A switch
statement in C evaluates the value of a variable or expression and executes a block of code based on that value. It’s particularly useful when you need to compare a single variable to multiple potential values.
The basic structure looks like this:
switch (variable) {
case value1:
// Code to execute if variable == value1
break;
case value2:
// Code to execute if variable == value2
break;
default:
// Code to execute if variable doesn't match any case
}
Key Points to Remember:
- Each
case
represents a possible value of the variable. - The
break
statement prevents the code from running into the next case. - The
default
case is optional and runs when none of the cases match.
Example Program: Basic Calculator with Switch
Let’s create a simple calculator that can perform addition, subtraction, multiplication, or division based on the user’s choice.
#include <stdio.h>
int main() {
int num1, num2;
char operator;
// Ask the user for input
printf("Enter an operator (+, -, *, /): ");
scanf(" %c", &operator);
printf("Enter two numbers: ");
scanf("%d %d", &num1, &num2);
switch (operator) {
case '+':
printf("%d + %d = %d\n", num1, num2, num1 + num2);
break;
case '-':
printf("%d - %d = %d\n", num1, num2, num1 - num2);
break;
case '*':
printf("%d * %d = %d\n", num1, num2, num1 * num2);
break;
case '/':
if (num2 != 0)
printf("%d / %d = %d\n", num1, num2, num1 / num2);
else
printf("Division by zero is not allowed.\n");
break;
default:
printf("Invalid operator\n");
}
return 0;
}
How the Code Works
- The program asks the user to input an operator (
+
,-
,*
, or/
). - Then, it requests two numbers for the calculation.
- Using the
switch
statement, it checks the operator:
- If the operator is
+
, it adds the numbers. - If the operator is
-
, it subtracts the numbers. - If the operator is
*
, it multiplies the numbers. - If the operator is
/
, it divides the numbers (after checking for division by zero).
- If the user enters an invalid operator, the
default
case runs, and an error message is displayed.
Conclusion
The switch
statement is a powerful tool in C programming. It makes your code easier to read and manage, especially when you have multiple conditions based on a single variable. Practice by modifying this example—try adding more cases or creating a different program!
Happy Coding!