(一)问题及代码
/*
烟台大学计算机与控制工程学院
文件名称:yzq.cpp
作 者:岳增强
完成日期:2017年9月14日
问题描述:输入两个整数,逆序后输出
*/
#include <stdio.h>
void myswap(int x,int y)
{
int t;
t=x;
x=y;
y=t;
}
int main()
{
int a,b;
printf("请输入待交换的两个整数:");
scanf("%d %d",&a,&b);
myswap(a,b);
printf("调用交换函数后的结果是:%d 和 %d\n",a,b);
return 0;
}
(二)运行结果
(三)知识点总结
由运行结果可以看到数值并没有交换成功,在本代码中,待交换的数值传到函数中后,myswap()函数开辟了两个int类型的空间x,y来接收传值;
在myswap()函数中将x,y两个数值进行了交换。在myswap()函数调用结束后,系统撤销x,y的内存空间,而a,b的内存中依旧存储着未交换之前的数值,
所以数值交换并未成功。
(四)学习心得
画图有助于对于程序的理解。