C Program to Swap Two Numbers
Example 1: Program to Swap Numbers Using Temporary Variable
#include <stdio.h>
int main()
{
double firstNumber, secondNumber, temporaryVariable;
printf("Enter first number: ");
scanf("%lf", &firstNumber);
printf("Enter second number: ");
scanf("%lf",&secondNumber);
// Value of firstNumber is assigned to temporaryVariable
temporaryVariable = firstNumber;
// Value of secondNumber is assigned to firstNumber
firstNumber = secondNumber;
// Value of temporaryVariable (which contains the initial value of firstNumber) is assigned to secondNumber
secondNumber = temporaryVariable;
printf("\nAfter swapping, firstNumber = %.2lf\n", firstNumber);
printf("After swapping, secondNumber = %.2lf", secondNumber);
return 0;
}
Output
Enter first number: 1.20 Enter second number: 2.45 After swapping, firstNumber = 2.45 After swapping, secondNumber = 1.20
In the above program, the temporaryVariable is assigned the value of firstNumber.
Then, the value of firstNumber is assigned to secondNumber.
Finally, the temporaryVariable (which holds the initial value of firstNumber) is assigned to secondNumber which completes the swapping process.
Here, temporaryVariable is used to hold the value of firstNumber and doesn’t have any other use except that. You can also write the swapping program without using temporaryVariable
Example 2: Program to Swap Numbers Without Using Temporary Variables
#include <stdio.h>
int main()
{
double firstNumber, secondNumber;
printf("Enter first number: ");
scanf("%lf", &firstNumber);
printf("Enter second number: ");
scanf("%lf",&secondNumber);
// Swapping process
firstNumber = firstNumber - secondNumber;
secondNumber = firstNumber + secondNumber;
firstNumber = secondNumber - firstNumber;
printf("\nAfter swapping, firstNumber = %.2lf\n", firstNumber);
printf("After swapping, secondNumber = %.2lf", secondNumber);
return 0;
}
Output
Enter first number: 10.25 Enter second number: -12.5 After swapping, firstNumber = -12.50 After swapping, secondNumber = 10.25
program in C that swaps the values of two integers using a temporary variable:
#include <stdio.h>
int main() {
int num1, num2, temp;
printf("Enter the first number: ");
scanf("%d", &num1);
printf("Enter the second number: ");
scanf("%d", &num2);
// Swapping values
temp = num1;
num1 = num2;
num2 = temp;
printf("\nAfter swapping:\n");
printf("First number: %d\n", num1);
printf("Second number: %d\n", num2);
return 0;
}
In this program, we declare three integer variables: “num1”, “num2”, and “temp”. We then prompt the user to enter the values of “num1” and “num2” using the “scanf” function.
Next, we swap the values of “num1” and “num2” using the temporary variable “temp”. This is done by assigning the value of “num1” to “temp”, then assigning the value of “num2” to “num1”, and finally assigning the value of “temp” to “num2”.
Finally, we print out the values of “num1” and “num2” after the swap using the “printf” function. The output of this program would be:
Enter the first number: 10
Enter the second number: 20
After swapping:
First number: 20
Second number: 10