Simple Calculator Program using Switch Case: C

In this video tutorial we shall perform Addition, Subtraction, Multiplication and Division of numbers based on user input, using switch case statement(decision control statement).

Related Read:
Basic Arithmetic Operations In C
Addition of 2 Numbers: C
Subtraction of 2 Numbers: C
Multiplication of 2 Numbers: C
Division of 2 Numbers: C
else if statement in C

We had written same calculator program using else-if clause. Same program has been modified to use Switch case in this program.
Simple Calculator Application In C

Simple Calculator using Switch Case: C Program



YouTube Link: https://www.youtube.com/watch?v=HHuaYKKoMR4 [Watch the Video In Full Screen.]


Working of Calculator Program
We display list of operation one can perform. That is,

1. Addition
2. Subtraction
3. Multiplication
4. Division

We ask the user to input his / her choice for arithmetic operation. If the user selects 1, then we ask the user to enter 2 integer numbers to perform addition operation. Once the user enters 2 integer numbers we add and display the result on the screen.

If the user enters wrong choice, we ask the user to enter proper choice.

Calculator Program using Switch Case: C Program

  1. #include < stdio.h >  
  2.   
  3. int main()  
  4. {  
  5.     int a, b;  
  6.     char choice;  
  7.   
  8.     printf("Enter your choice\n");  
  9.     printf("a. Addition\nb. Subtraction\nc. Multiplication\nd. Division\n");  
  10.     scanf("%c", &choice);  
  11.   
  12.   
  13.    printf("Enter 2 integer numbers\n");  
  14.    scanf("%d %d", &a, &b);  
  15.   
  16.   
  17.     switch(choice)  
  18.     {  
  19.         case 'a': printf("%d + %d = %d\n", a, b, (a+b));  
  20.                 break;  
  21.   
  22.         case 'b': printf("%d - %d = %d\n", a, b, (a-b));  
  23.                 break;  
  24.   
  25.         case 'c': printf("%d x %d = %d\n", a, b, (a*b));  
  26.                 break;  
  27.   
  28.         case 'd'if( b != 0)  
  29.                     printf("%d / %d = %d\n", a, b, (a/b));  
  30.                 else  
  31.                     printf("Number can't be divided by 0\n");  
  32.                 break;  
  33.   
  34.         default: printf("You entered wrong choice\n");  
  35.                  break;  
  36.     }  
  37.   
  38.     return 0;  
  39. }  

Output
Enter your choice
a. Addition
b. Subtraction
c. Multiplication
d. Division
c
Enter 2 integer numbers
5
10
5 x 10 = 50

In above program we are asking user to enter character a or b or c or d to perform addition, subtraction, multiplication and division operations respectively.

  1. #include < stdio.h >  
  2.   
  3. int main()  
  4. {  
  5.     int a, b, choice;  
  6.   
  7.     printf("Enter your choice\n");  
  8.     printf("1. Addition\n2. Subtraction\n3. Multiplication\n4. Division\n");  
  9.     scanf("%d", &choice);  
  10.   
  11.     if( choice > 4 )  
  12.     {  
  13.         printf("Select with in the range!\n");  
  14.     }  
  15.     else  
  16.     {  
  17.         printf("Enter 2 integer numbers\n");  
  18.         scanf("%d %d", &a, &b);  
  19.     }  
  20.   
  21.   
  22.     switch(choice)  
  23.     {  
  24.         case 1: printf("%d + %d = %d\n", a, b, (a+b));  
  25.                 break;  
  26.   
  27.         case 2: printf("%d - %d = %d\n", a, b, (a-b));  
  28.                 break;  
  29.   
  30.         case 3: printf("%d x %d = %d\n", a, b, (a*b));  
  31.                 break;  
  32.   
  33.         case 4: if( b != 0)  
  34.                     printf("%d / %d = %d\n", a, b, (a/b));  
  35.                 else  
  36.                     printf("Number can't be divided by 0\n");  
  37.                 break;  
  38.   
  39.         default: printf("You entered wrong choice\n");  
  40.                  break;  
  41.     }  
  42.   
  43.     return 0;  
  44. }  

Output:
Enter your choice
1. Addition
2. Subtraction
3. Multiplication
4. Division
4
Enter 2 integer numbers
10
2
10 / 2 = 5

Here we are asking user to enter 1 or 2 or 3 or 4 to choose the arithmetic operation.

  1. #include<stdio.h>  
  2.   
  3. int main()  
  4. {  
  5.     int a, b;  
  6.     char choice;  
  7.   
  8.     printf("Enter your choice\n");  
  9.     printf("1. Addition\n2. Subtraction\n3. Multiplication\n4. Division\n");  
  10.     scanf("%c", &choice);  
  11.   
  12.     printf("Enter 2 integer numbers. Format: a + b\n");  
  13.     scanf("%d %c %d", &a, &choice, &b);  
  14.   
  15.   
  16.   
  17.     switch(choice)  
  18.     {  
  19.         case '+': printf("%d + %d = %d\n", a, b, (a+b));  
  20.                 break;  
  21.   
  22.         case '-': printf("%d - %d = %d\n", a, b, (a-b));  
  23.                 break;  
  24.   
  25.         case '*': printf("%d x %d = %d\n", a, b, (a*b));  
  26.                 break;  
  27.   
  28.         case '/'if( b != 0)  
  29.                     printf("%d / %d = %d\n", a, b, (a/b));  
  30.                 else  
  31.                     printf("Number can't be divided by 0\n");  
  32.                 break;  
  33.   
  34.         default: printf("You entered wrong choice\n");  
  35.                  break;  
  36.     }  
  37.   
  38.     return 0;  
  39. }  
  40. </stdio.h>  

Output:
Enter your choice
1. Addition
2. Subtraction
3. Multiplication
4. Division
1
Enter 2 integer numbers. Format: a + b
50 + 60
50 + 60 = 110

Here we ask the user to enter values as well as the operation to be performed. Operands and operator.

Note 1: There is no need of curly braces inside case.
Note 2: If a case doesn’t end with break statement, then the execution continues and the block of code present inside next case will also get executed.
Note 3: default case is optional. And the code inside it executes only when non of the cases match.
Note 4: Here switch, case, break, default are all keywords / reserve words.

For full C programming language free video tutorial list visit:C Programming: Beginner To Advance To Expert