Scambiare due numeri usando la variabile in C

In molti casi, ai programmatori è richiesto di scambiare i valori di due variabili. Qui impareremo come scambiare i valori di due variabili intere, il che può portare allo scambio di valori di qualsiasi tipo. I valori tra le variabili possono essere scambiati in due modi:

  • Con l'aiuto di una terza variabile (temp)
  • Senza utilizzare alcuna variabile temporanea

Impareremo il primo metodo qui per vedere il secondo metodo clicca qui .

Algoritmo

Scopriamo passo dopo passo come dovremmo disegnare una soluzione -

START
   Var1, Var2, Temp
   Step 1 → Copy value of Var1 to Temp
   Step 2 → Copy value of Var2 to Var1
   Step 3 → Copy value of Temp to Var2
STOP

Pseudocodice

Dall'algoritmo di cui sopra, possiamo disegnare lo pseudocodice per questo programma -

procedure swap(a, b)
   
   set temp to 0
   temp ← a
   a ← b      // a holds value of b
   b ← temp   // b holds value of a stored in temp

end procedure

Implementazione

L'implementazione C dell'algoritmo di cui sopra dovrebbe essere simile a questa:

#include <stdio.h>

int main() {
   int a, b, temp;

   a = 11;
   b = 99;

   printf("Values before swapping - \n a = %d, b = %d \n\n", a, b);

   temp  = a;
   a  = b;
   b  = temp;

   printf("Values after swapping - \n a = %d, b = %d \n", a, b);
}

Produzione

Il risultato di questo programma dovrebbe essere:

Values before swapping -
 a = 11, b = 99                                         
 
Values after swapping -
 a = 99, b = 11