/*
*Copyright (c) 2017,烟台大学计算机学院
*All rights reserved.
*文件名称:cpp1.cpp
*作 者:李庆耀
*完成时间:2017年9月12日
*
*问题描述:输入两个整数a和b,交换a和b的数值
*输入描述:两个整数
*程序输出:交换后的两个整数
*/
#include <stdio.h>
void myswap(int *p1,int *p2)
{
int t;
t=*p1;
*p1=*p2;
*p2=t;
}
int main()
{
int a,b;
printf("请输入待交换的两个整数:");
scanf("%d %d",&a,&b);
myswap(&a,&b);
printf("调用交换函数后的结果是:%d 和 %d\n",a,b);
return 0;
}
运行结果
交换成功的原因:函数使用了指针变量做函数的形式参数,传递的是a,b两变量的地址。在函数体中是对两地址所指向的变量进行了交换,所以交换了a,b两变量的值,交换成功。