  Get free ebooK with 50 must do coding Question for Product Based Companies solved
Fill the details & get ebook over email  Thank You!
We have sent the Ebook on 50 Must Do Coding Questions for Product Based Companies Solved over your email. All the best!

# Calculator Program in C Language

Last Updated on May 25, 2023 by Prepbytes In the realm of programming, calculators serve as indispensable tools for performing mathematical calculations efficiently. Building your own calculator program not only enhances your understanding of fundamental programming concepts but also provides you with a practical application to solve mathematical problems.

In this article, we will explore the process of creating a calculator program in the C programming language. We will take you through the step-by-step development of a calculator that can perform basic arithmetic operations, including addition, subtraction, multiplication, and division. Additionally, we will expand the functionality by incorporating more advanced operations, such as exponentiation and square root calculations.

Throughout the article, we will provide clear explanations and code examples, making it accessible for both beginners and experienced programmers. By following along, you will gain a deeper understanding of core programming concepts, such as user input, control flow, and function implementation. ## Algorithm for a Calculator Program in C

• Step 1: Declare the following variables: 1, 2, answer, and operation. Numbers 1 and 2 need two operands, and the answer is where you store the outcome of the operation.
• Step 2: A print statement that asks the user for two integers.
• Step 3: Request the user’s input by asking for numbers 1 and 2.
• Step 4: Print a statement with options for addition, subtraction, division, multiplication, and other operators.
• Step 5: Take the user’s operator preference.
• Step 6: Calculate the outcome and enter it in the answer.
• Step 7: Show the solution.
• Step 8: Exit the application.

We have various approaches to writing a simple calculator program in c:

• The simple calculator program in c using the if-else statement.
• The simple calculator program in c using a switch case
• The simple calculator program in c using function and switch case

## Approach 1: The Simple Calculator Program in C using the If-else Statement.

In this program, the user is prompted to enter an operator (+, -, *, or /) and two numbers. The if-else statements are used to determine the chosen operator and perform the corresponding arithmetic operation. If the division operator is chosen, the program checks for division by zero to prevent an error.

Finally, the result of the calculation is displayed on the screen. The program handles invalid operators gracefully and terminates execution if an error occurs. Let’s see how to write code for a calculator program in c.

### Program Code in C using if-else

```#include <stdio.h>
int main()
{
int number1, number2;
char op;

printf (" Enter the operation to perform(+, -, *, /) \n ");
scanf ("%c", &op);
printf (" Enter the first number: ");
scanf(" %d", &number1);
printf (" Enter the second number: ");
scanf (" %d", &number2);

if (op == '+')
{
printf (" %d + %d = %f", number1, number2, answer);
}

//substraction
else if (op == '-')
{
printf (" %d - %d = %f", number1, number2, answer);
}

//multiplication
else if (op == '*')
{
printf (" %d * %d = %f", number1, number2, answer);
}

//division
else if (op == '/')
{
if (number2 == 0)
{
printf (" \n Divisor cannot be zero. Please enter another value ");
scanf ("%d", &number2);
}
printf (" %d / %d = %.2f", number1, number2, answer);
}
else
{
printf(" \n Enter valid operator ");
}
return 0;
}```

Output

``````Enter the operation to perform(+, -, *, /)
*
Enter the first number: 2
Enter the second number: 6
2 * 6 = 12.000000``````

First, we declared the variables number1, number2, answer, and op in the aforementioned program. The user is then asked to provide input for numbers 1, 2, and op. Now that we have checked the input operator, if it is +, we will add the numbers and report the result. Subtraction, multiplication, and division will be carried out in accordance with whether the provided operator is -.* or /. Since we cannot divide any integer by zero, we shall verify additional conditions in a division that number 2 is not zero. We will prompt the user to enter a valid operator if the requested operator is not one of the available operators. We can see from the result that we started by taking the operator input, which is multiplication. In the following step, we took the numbers 2 and 6, multiplied them, and then printed the result.

## Approach 2: The Simple Calculator Program in C using the Switch Case.

In this program, the user is prompted to enter an operator (+, -, *, or /) and two numbers. The switch case statement is used to determine the chosen operator and perform the corresponding arithmetic operation. Similar to the if-else version, the program checks for division by zero when the division operator is chosen.

Finally, the result of the calculation is displayed on the screen. The program handles invalid operators gracefully and terminates execution if an error occurs. Let’s see how to write code for a calculator program in C.

### Calculator Program Using Switch

```#include <stdio.h>
int main()
{
int number1, number2;
char op;

printf (" Enter the operation to perform(+, -, *, /) \n ");
scanf ("%c", &op);
printf (" Enter the first number: ");
scanf(" %d", &number1);
printf (" Enter the second number: ");
scanf (" %d", &number2);

switch(op){
case '+':
printf (" %d + %d = %f", number1, number2, answer);
break;

//substraction
case '-':
printf (" %d - %d = %f", number1, number2, answer);
break;

//multiplication
case '*':
printf (" %d * %d = %f", number1, number2, answer);
break;

//division
case '/':
if (number2 == 0)
{
printf (" \n Divisor cannot be zero. Please enter another value ");
scanf ("%d", &number2);
}
printf (" %d / %d = %.2f", number1, number2, answer);
break;

default:
printf(" \n Enter valid operator ");

}
return 0;
}```

Output

`````` Enter the operation to perform(+, -, *, /)
-
Enter the first number: 23
Enter the second number: 11
23 - 11 = 12.000000``````

First, we declared the variables number1, number2, answer, and op in the aforementioned program. The user is then asked to provide input for numbers 1, 2, and op. Now, we will use the switch statement to check for the input operation; if the supplied operator is +, we will add the given values and output the result. Subtraction, multiplication, and division will be carried out in accordance with whether the provided operator is -.* or /. Since we cannot divide any integer by zero, we shall verify additional conditions in a division that number 2 is not zero.We will utilize the default statement to prompt the user to provide a valid operator if the given operator is not one of the available operators. We can see from the output that we first enter the subtraction operator, then we take the two values 23 and 11, and last we subtract the two numbers, printing the result as 12.

## Approach 3: The Simple Calculator Program in C using the Functions and Switch Case.

In this program, four separate functions (add, subtract, multiply, and divide) are defined to perform the corresponding arithmetic operations. The main function prompts the user to enter an operator (+, -, *, or /) and two numbers. The switch case statement is then used to determine the chosen operator and call the appropriate function.

The result of the calculation is stored in the result variable and displayed on the screen. The program handles invalid operators gracefully and terminates execution if an error occurs during division by zero.

### Simple Calculator Program in C Using Functions

```#include <stdio.h>
#include <stdlib.h>

int subtraction();
int multiplication();
int division();

int main()
{
char op;

printf (" Enter the operation to perform(+, -, *, /) \n ");
scanf ("%c", &op);

switch (op)
{
case '+':
break;

case '-':
subtraction();
break;

case '*':
multiplication();
break;

case '/':
division();
break;

default:
printf("\n enter valid operator");
break;
}

return 0;
}

{
printf (" Enter the first number: ");
scanf ("  %d", &number1);
printf (" Enter the second number: ");
scanf ("  %d", &number2);
printf (" %d + %d = %d", number1, number2, answer);
return 0;
}

int subtraction()
{
printf (" Enter the first number: ");
scanf ("  %d", &number1);
printf (" Enter the second number: ");
scanf ("  %d", &number2);
printf (" %d - %d = %d", number1, number2, answer);
}

int multiplication()
{
printf (" Enter the first number: ");
scanf ("  %d", &number1);
printf (" Enter the second number: ");
scanf ("  %d", &number2);
printf (" %d * %d = %d", number1, number2, answer);
}

int division()
{
printf (" Enter the first number: ");
scanf ("  %d", &number1);
printf (" Enter the second number: ");
scanf ("  %d", &number2);

if (number2 == 0)
{
printf (" \n Divisor cannot be zero. Please enter another value ");
scanf ("%d", &number2);
}
printf (" \n  %d / %d = %d", number1, number2, answer);
}
```

Output

`````` Enter the operation to perform(+, -, *, /)
*
Enter the first number: 3
Enter the second number: 4
3 * 4 = 12``````

First, we constructed four functions for addition, subtraction, multiplication, and division in the aforementioned programme. We then used the user’s input to complete the action as needed. Now, we will use the switch statement to check for the input operation; if the supplied operator is +, we will add the given values and output the result. Subtraction, multiplication, and division will be carried out in accordance with whether the provided operator is -.* or /. Since we cannot divide any integer by zero, we shall verify additional conditions in a division that number 2 is not zero. We will utilize the default statement to prompt the user to provide a valid operator if the given operator is not one of the available operators. We can see from the output that we first enter the multiplication operator, then we take the two values 3 and 4, and last we multiply the two numbers, printing the result as 12.

Conclusion
By customizing and expanding the calculator program, readers have the opportunity to explore further and adapt it to their specific needs and preferences. Whether you are a beginner learning the basics of C programming or an experienced developer honing your skills, the process of building a calculator program provides valuable insights and practical experience.

As you continue your programming journey, the knowledge and techniques gained from building a calculator program can be applied to a wide range of programming projects, from mathematical simulations to financial applications.

In conclusion, the calculator program in C serves as an excellent exercise to sharpen your coding abilities and solidify your understanding of programming fundamentals. Embrace the versatility and power of the C language, and let your imagination and creativity guide you in crafting more sophisticated and functional programs.

## FAQ related to Calculator Program in C Language

Q1: What is a calculator program in C?
Ans. A calculator program in C is a software application that allows users to perform basic arithmetic calculations, such as addition, subtraction, multiplication, and division, using the C programming language.

Q2: What are the fundamental concepts involved in building a calculator program in C?
Ans. Building a calculator program in C involves understanding concepts such as user input, control flow (if-else or switch case statements), arithmetic operations, and function implementation.

Q3: Can a calculator program in C handle more complex mathematical operations?
Ans. Yes, a calculator program in C can be expanded to handle more complex mathematical operations. This can include implementing scientific functions (e.g., square root, exponentiation, trigonometric functions), working with decimal numbers, or supporting memory functions (e.g., memory recall, memory store).

Q4: How can I handle errors, such as division by zero, in a calculator program?
Ans. To handle errors like division by zero in a calculator program, you can incorporate conditional statements or error-checking mechanisms. Before performing division, you can check if the divisor is zero and display an appropriate error message to the user.

Other C Programs