📅  最后修改于: 2020-09-25 06:40:24             🧑  作者: Mango
用户输入的三个变量分别存储在变量a
, b
和c
。
然后,将这些变量传递给函数 cyclicSwap()
。而不传递实际变量,而是传递这些变量的地址。
当在cyclicSwap()
函数以循环顺序交换这些变量时, main
函数中的变量a
, b
和c
也将自动交换。
#include
using namespace std;
void cyclicSwap(int *a, int *b, int *c);
int main()
{
int a, b, c;
cout << "Enter value of a, b and c respectively: ";
cin >> 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;
}
输出
Enter value of a, b and c respectively: 1
2
3
Value before swapping:
a=1
b=2
c=3
Value after swapping numbers in cycle:
a=3
b=1
c=2
注意,我们没有从cyclicSwap()
函数返回任何值。