Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,885 questions

51,811 answers

573 users

How to swap two numbers without using third variable in C

6 Answers

0 votes
#include <stdio.h> 

int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
    
    a = a + b;
    b = a - b;
    a = a - b;
 
    printf("a = %d\nb = %d\n", a, b);
    
    return(0);
}


/*

run:

a = 13
b = 5

*/


answered May 27, 2015 by avibootz
0 votes
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
     
    a = a + b - (b = a);
  
    printf("a = %d\nb = %d\n", a, b);
     
    return(0);
}
 
 
/*
 
run:
 
a = 13
b = 5
 
*/

 



answered May 5, 2017 by avibootz
0 votes
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
     
    a = a + b, b = a - b, a = a - b;
  
    printf("a = %d\nb = %d\n", a, b);
     
    return(0);
}
 
 
/*
 
run:
 
a = 13
b = 5
 
*/

 



answered May 5, 2017 by avibootz
0 votes
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
     
    a = a ^ b;
    b = a ^ b;
    a = b ^ a;
  
    printf("a = %d\nb = %d\n", a, b);
     
    return(0);
}
 
 
/*
 
run:
 
a = 13
b = 5
 
*/

 



answered May 5, 2017 by avibootz
0 votes
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
     
    a = b - ~a - 1;
    b = a + ~b + 1;
    a = a + ~b + 1;
  
    printf("a = %d\nb = %d\n", a, b);
     
    return(0);
}
 
 
/*
 
run:
 
a = 13
b = 5
 
*/

 



answered May 5, 2017 by avibootz
0 votes
#include <stdio.h> 
  
int main(int argc, char **argv) 
{ 
    int a = 5, b = 13;
      
	a ^= b ^= a ^= b;
   
    printf("a = %d\nb = %d\n", a, b);
      
    return(0);
}
  
  
/*
  
run:
  
a = 13
b = 5
  
*/

 



answered Dec 23, 2018 by avibootz

Related questions

2 answers 204 views
4 answers 339 views
2 answers 118 views
2 answers 114 views
6 answers 421 views
4 answers 311 views
...