Given two integers, the task is to add these integer numbers and return their sum.
Examples
Input: a = 5, b = 3
Output: 8
Explanation: The sum of 5 and 3 is 8.Input: a = -2, b = 7
Output: 5
Explanation: The sum of -2 and 7 is 5.
In C, we have multiple methods to add two numbers, such as the addition operator (+), or by using bitwise addition, which uses AND and XOR operations, or by simply using the increment operator.
Table of Content
Adding Two Numbers using + Operator
Adding two numbers is a simple task in C language that can be accomplished using the '+' operator that takes two operands and returns their sum as the result. This operator allows you to perform arithmetic addition between integers or floating-point numbers.
C Program to Add Two Numbers using + Operators
// C program to add two numbers
#include <stdio.h>
int main() {
int a, b, sum = 0;
// Read two numbers from the user
printf("Enter two integers: ");
scanf("%d %d", &a, &b);
// Calculate the addition of a and b
// using '+' operator
sum = a + b;
printf("Sum: %d", sum);
return 0;
}
Output
Enter two integers: 5 3
Sum: 8
Time Complexity: O(1)
Auxiliary Space: O(1)
Explanation: In the above program, the user is first asked to enter two numbers. The input is taken using the scanf() function and stored in the variables a and b. Then, the variables a and b are then added using the arithmetic operator + (addition operator), and the result is stored in the variable sum.
Addition Using Increment Operator (++)
We can also add two numbers in C++ using the increment operator by repeatedly increasing the first value based on the value of the second number.
C Program to Add Two Numbers using Bitwise Operators
// C Program to add two numbers using increment operator
#include <iostream>
using namespace std;
int addUsingIncrement(int a, int b) {
return a;
}
int main() {
int a, b;
// Input two integers
cout << "Enter two integers: ";
cin >> a >> b;
// If b is positive, increment a b times
for (int i = 0; i < b; i++) {
a++;
}
// If b is negative, decrement a |b| times
for (int i = 0; i > b; i--) {
a--;
}
// Output the sum
cout << "Sum = " << a << endl;
return 0;
}
Output
Enter two integers: 5 3
Sum = 8
Addition Using Bitwise Operators
We can also add two numbers using bitwise operations without using the + operator. This involves using the XOR and AND operation along with bit shifting.
Step-by-Step Approach
- Read two integers from the user.
- Use bitwise XOR (^) operator to add the bits of the numbers without carry.
- Use bitwise AND (&) operator to calculate the carry.
- Left shift (<<) the carry by one place to add it.
- Repeat the process until there is no carry.
C Program to Add Two Numbers using Bitwise Operators
// C program to add two numbers using Bitwise operators
#include <stdio.h>
int main() {
int a, b, sum, carry;
// Take two integer numbers from user
printf("Enter two integers: ");
scanf("%d %d", &a, &b);
while (b) {
// Carry is AND of a and b
carry = a & b;
// Sum without carry is XOR of a and b
a = a ^ b;
// Carry is shifted by one so that it can be
// added in the next iteration
b = carry << 1;
}
printf("Sum = %d\n", a);
return 0;
}
Output
Enter two integers: 5 3
Sum = 8