第17周项目-体会函数参数传递
* Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:徐凯旋 * 完成日期:2012 年 12 月 20 日 * 版 本 号:v 1.0 */
(1)
#include <iostream>using namespace std;void exchange(int x,int y);//定义交换函数exchangeint main(){ int a,b; cin>>a>>b; if(a<b) exchange(a,b);//调用交换函数 cout<<"a,b="<<a<<","<<b<<endl;//在交换函数中改变的是形参的值,未改变实参a,b的值,所以输出的还是原来的值 return 0;}void exchange(int x,int y){ int t; t=x; x=y; y=t;}
运行结果:
(2)
#include <iostream>using namespace std;void exchange(int *x,int *y);//定义交换函数exchangeint main(){ int a,b; cin>>a>>b; if(a<b) exchange(&a,&b);//调用交换函数 cout<<"a,b="<<a<<","<<b; //交换函数调用的为a,b的地址值,函数可以通过改变地址值来改变实参的值,从而使a,b交换。 cout<<endl; return 0;}void exchange(int *x,int *y){ int t; t=*x; *x=*y; *y=t;}
运行结果:
(3)
#include <iostream>using namespace std;void exchange(int &x,int &y);int main(){ int a,b; cin>>a>>b; if(a<b) exchange(a,b); cout<<"a,b="<<a<<","<<b; cout<<endl; return 0;}void exchange(int &x,int &y){ int t; t=x; x=y; y=t;}
运行结果: