- /*
- * 程序的版权和版本声明部分
- * Copyright (c)2012, 烟台大学计算机学院学生
- * All rightsreserved.
- * 文件名称: 1.cpp
- * 作 者:王俊
- * 完成日期: 2012 年12 月20 日
- * 版本号: v1.0
- *
- * 输入描述:下面三段程序都试图通过定义函数,实现实际参数在必要时的交换,2,3能够实现,1不
- 能实现
- * 问题描述:看储存空间变化。
- 第一种,虽然在调用时交换过值。但是随着储存空间的消失,数值的变化也消失。
- 第二种,运用指针,在地址上对值进行改变。
- 第三种,运用引用,相当于直接改变数值。
- */
(1) #include <iostream> using namespace std; void jiaohuan(int x, int y); int main(void) { int a,b; cin>>a>>b; if (a<b) jiaohuan(a, b); cout<<"a,b="<<a<<","<<b; return 0; } void jiaohuan(int x, int y) { int t; t=x; x=y; y=t; } (2) #include <iostream> using namespace std; void jiaohuan(int *x, int *y); int main(void) { int a,b; cin>>a>>b; if (a<b) jiaohuan(&a, &b); cout<<"a,b="<<a<<","<<b; return 0; } void jiaohuan(int *x, int *y) { int t; t=*x; *x=*y; *y=t; } (3) #include <iostream> using namespace std; void jiaohuan(int &x, int &y); int main(void) { int a,b; cin>>a>>b; if (a<b) jiaohuan(a, b); cout<<"a,b="<<a<<","<<b; return 0; } void jiaohuan(int &x, int &y) { int t; t=x; x=y; y=t; }
运行结果:
17周体会函数参数传递1
最新推荐文章于 2023-11-12 19:16:42 发布
本文详细介绍了三种不同的参数交换方法,并对比了它们的效果。第一种方法使用局部变量进行交换,但因作用域限制无法持久化结果;第二种方法通过指针修改原始变量的值,实现了有效的交换;第三种方法利用引用同样达到了改变原始值的目的。
781

被折叠的 条评论
为什么被折叠?



