Devo realizzare un programma che mi scambi due numeri attraverso l'utilizzo di sottoprogrammi, il programma funziona e scambia anche correttamente solamente che ad esempio se inserisco 10 e 20, dice che a vale 20 e b vale 10 50605 , aggiunge dei numeri nel finale come mai?
#include <iostream>
using namespace std;
int scambia (int& a, int& b)
{
int scambio;
scambio=a;
a=b;
b=scambio;
cout << " a ora vale " << a << " e b ora vale " << b << endl;
}
void richiedi (int& a, int& b)
{
cout << " Inserire a ";
cin >> a;
cout << " Inserire b ";
cin >> b;
}
void stampa (int a, int b)
{
cout << " Lo scambio e' avvenuto con successo ";
cout << scambia (a,b);
}
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int a,b;
richiedi (a,b);
stampa (a,b);
return 0;
}