NBC 103 • Practical #3

Menu-Driven Arithmetic Calculator

Aim: To implement a menu-driven calculator using switch-case for basic arithmetic operations (+, -, *, /).

Step-by-Step Algorithm & Logic

  • 11. Start and display menu: 1. Add, 2. Subtract, 3. Multiply, 4. Divide.
  • 22. Read user choice and operands num1, num2.
  • 33. Switch on choice: case 1 -> add, case 2 -> sub, case 3 -> mult, case 4 -> div (check div by zero).
  • 44. Include break statement after every case to prevent fall-through.
  • 55. Provide default case for invalid menu inputs.

Complete Tested Source Code

#include <stdio.h>

int main(void) {
    int choice = 3;
    double num1 = 12.5, num2 = 4.0;

    printf("=== BCA CALCULATOR (Choice: %d) ===\n", choice);
    printf("Operands: %.2lf and %.2lf\n", num1, num2);

    switch (choice) {
        case 1:
            printf("Result: %.2lf + %.2lf = %.2lf\n", num1, num2, num1 + num2);
            break;
        case 2:
            printf("Result: %.2lf - %.2lf = %.2lf\n", num1, num2, num1 - num2);
            break;
        case 3:
            printf("Result: %.2lf * %.2lf = %.2lf\n", num1, num2, num1 * num2);
            break;
        case 4:
            if (num2 != 0)
                printf("Result: %.2lf / %.2lf = %.2lf\n", num1, num2, num1 / num2);
            else
                printf("Error: Division by Zero is undefined!\n");
            break;
        default:
            printf("Invalid Option selected.\n");
    }
    return 0;
}

Sample Input:

Choice = 3, num1 = 12.5, num2 = 4.0

Sample Output:

Result: 12.50 * 4.00 = 50.00

Practical Exam Viva Questions (Exp #3)

1 Questions
1

Can we use floating-point expressions in a C switch statement?