定义一个函数swap,功能为交换两个变量a和b的值,在主函数中输入2个数,调用该函数,输出交换后的数据.
#include<stdio.h>
void swap(int *a,int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int a,b;
scanf("%d%d",&a,&b);
swap(&a,&b);
printf("%d %d\n",a,b);
return 0;
}
swap操作实现交换两个容器内所有元素的功能。要交换的容器的类型必须匹配: 必须是相同类型的容器,而且所存储的元素类型也必须相同。调用了swap函数后,右操作数原来存储的元素被存放在左操作数中,反之亦然。
扩展资料:
执行swap后,容器svec1中存储24个string类型的元素,而svec2则存储10个元素。
关于swap的一个重要问题在于:该操作不会删除或插入任何元素,而且保证在常量时间内实现交换。由于容器内没有移动任何元素,因此迭代器不会失效。
计算机中的函数,可以根据其运算功能,由我们自己去定义,只要是运算功能是固定的,我们就可以把它定义成一个函数,这样可以避免相同的程序段在程序中重复出现。
在需要它时,只需要调用相应的函数就行了。这样不仅可以使我们编写的程序精简,而且可以使我们的程序更富有可读性。
参考资料来源:百度百科——SWaP
void swap(int *a,int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int a,b;
scanf("%d%d",&a,&b);
swap(&a,&b);
printf("%d %d\n",a,b);
return 0;
}
那怎么编程啊
交换的过程就是借助一个第三变量
至于传值的问题,我建议你使用全局变量,这样就省去传值的不方便了
代码如下:
#include
int a,b;
void swap()
{
int temp;
temp=a;
a=b;
b=temp;
}
int main()
{
scanf("%d %d",&a,&b);
swap();
printf("%d %d\n",a,b);
swap();
printf("%d %d\n",a,b);
return 0;
}
{
int iTmp;
iTmp = *a;
*a = *b;
*b = iTmp;
}
void swap(int *a,int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int a,b;
scanf("%d%d",&a,&b);
swap(&a,&b);
printf(
}
广告 您可能关注的内容 |