Write a program to swap content of two variable.
#include<stdio.h> void Swap_Two_Numbers(int*,int*); int main() { int num1,num2,temp,op,*ptr1,*ptr2; printf("Enter a Number_1 = "); scanf("%d",&num1); printf("Enter a Number_2 = "); scanf("%d",&num2); if(num1 == num2) { printf("Same Data.\nNo Need to Swap\n"); return 0; } printf("Enter Option\n1] Using Temperory Variable\n2] One Expression(+/-)\ \n3] One Expression(*//)\n4] Without Temperory Variable(+/-)\n5] Without Temprory Variable(*//)\ \n6] Using Pointer\n7] Using Function\n8] Bitwise Method\n"); scanf("%d",&op); printf("Before Swapping\nNum 1 = %d Num 2 = %d\n",num1,num2); switch(op) { case 1: temp = num1; num1 = num2; num2 = temp; break; case 2: num2 = (num1+num2) - (num1=num2); break; case 3: num2 = (num1*num2) / (num1=num2); break; case 4: num1 = num1 + num2; num2 = num1 - num2; num1 = num1 - num2; break; case 5: num1 = num1 * num2; num2 = num1 / num2; num1 = num1 / num2; break; case 6: ptr1 = &num1; ptr2 = &num2; temp = *ptr1; *ptr1 = *ptr2; *ptr2 = temp; break; case 7: Swap_Two_Numbers(&num1,&num2); break; case 8: num1 = num1 ^ num2; num2 = num1 ^ num2; num1 = num1 ^ num2; break; default: printf("Invalid Option....\n"); } printf("After Swapping\nNum 1 = %d Num 2 = %d\n",num1,num2); return 0; } void Swap_Two_Numbers(int *p,int *q) { int temp; temp = *p; *p = *q; *q = temp; }
Output
Enter a Number_1 = 10 Enter a Number_2 = 20 Enter Option 1] Using Temperory Variable 2] One Expression(+/-) 3] One Expression(*//) 4] Without Temperory Variable(+/-) 5] Without Temprory Variable(*//) 6] Using Pointer 7] Using Function 8] Bitwise Method 4 Before Swapping Num 1 = 10 Num 2 = 20 After Swapping Num 1 = 20 Num 2 = 10
Enter a Number_1 = 10 Enter a Number_2 = 20 Enter Option 1] Using Temperory Variable 2] One Expression(+/-) 3] One Expression(*//) 4] Without Temperory Variable(+/-) 5] Without Temprory Variable(*//) 6] Using Pointer 7] Using Function 8] Bitwise Method 8 Before Swapping Num 1 = 10 Num 2 = 20 After Swapping Num 1 = 20 Num 2 = 10