编写一个交换两个变量的函数,在主程序中调用,用变量地址作为实参,指针变量作为形参,实现两个变量的交换.

如题所述

假设你使用的c语言
#include
<stdio.h>
void
swap(int*
a,int*
b)//
a,b指针做形参
{
int
temp=*a;//
暂存指针a所指变量的值
*a=*b;//
指针b所指的值赋值给a所指变量
*b=temp;//
指针b所指变量的值变为原先a所指的值
}
int
main(void)
{
int
a=10,b=20;
swap(&a,&b);//
a,b
地址做实参
printf("%d
%d\n",a,b);
return
0;
}
如果你用的是c++的话,还可以使用引用类型
void
swap2(int&
a,int&
b)
{
int
temp=a;
a=b;
b=temp;
}
交换两个变量的值的时候可以使用异或符号^省去中间变量temp:
void
swap3(int&
a,int&
b)
{
a=a^b;
b=a^b;
a=a^b;
}
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜