C ++ program za zamjenu brojeva u cikličkom redoslijedu pomoću poziva putem reference

Ovaj program od korisnika uzima tri cijele brojeve i zamjenjuje ih u cikličkom redoslijedu pomoću pokazivača.

Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja na C ++:

  • C ++ pokazivači
  • C ++ poziv referencom: Korištenje pokazivača (s primjerima)

Tri varijable koje je korisnik unio pohranjene su u varijable a, b i c.

Zatim se te varijable prosljeđuju funkciji cyclicSwap(). Umjesto prosljeđivanja stvarnih varijabli, prosljeđuju se adrese tih varijabli.

Kada se ove varijable u cyclicSwap()funkciji zamijene u cikličkom redoslijedu , varijable a, b i c u mainfunkciji također se automatski zamjenjuju.

Primjer: Program za zamjenu elemenata pomoću poziva putem reference

 #include using namespace std; void cyclicSwap(int *a, int *b, int *c); int main() ( int a, b, c; cout <> a>> b>> c; cout << "Value before swapping: " << endl; cout << "a, b and c respectively are: " << a << ", " << b << ", " << c << endl; cyclicSwap(&a, &b, &c); cout << "Value after swapping numbers in cycle: " << endl; cout << "a, b and c respectively are: " << a << ", " << b << ", " << c << endl; return 0; ) void cyclicSwap(int *a, int *b, int *c) ( int temp; temp = *b; *b = *a; *a = *c; *c = temp; )

Izlaz

 Unesite vrijednost a, b i c: 1 2 3 Vrijednost prije zamjene: a = 1 b = 2 c = 3 Vrijednost nakon zamjene brojeva u ciklusu: a = 3 b = 1 c = 2

Primijetite da iz cyclicSwap()funkcije nismo vratili nikakve vrijednosti .

Zanimljivi članci...