您的位置:首页 > 编程语言 > C语言/C++

第二周【项目1c/c++语言中函数参数传递的三种形式】

2016-09-07 23:09 363 查看
/*

*Copyright (c)2016,烟台大学计算机学院

*All rights reserved.

*文件名称:传写.cpp

*作者:衣龙川

*完成日期:2016年9月7日

*版本号:v1.0

*

*问题描述:函数参数传递的三种方式

*输入描述:待交换的两个整数

*输出描述:交换函数后的结果

*/

//(1)传值

#include<iostream>

using namespace std;

void myswap(int x,int y)

{

int t;

t=x;

x=y;

y=t;

}

int main()

{

int a,b;

cout<<"请输入待交换的两个整数:"<<endl;

cin>>a>>b;

myswap(a,b);

cout<<"调用交换函数后的结果是:"<<endl;

cout<<a<<" "<<b<<endl;

return 0;

}

运行结果截图:



//(2)传地址
#include<iostream>

using namespace std;

void myswap(int *p1,int *p2)

{

int t;

t=*p1;

*p1=*p2;

*p2=t;

}

int main()

{

int a,b;

cout<<"请输入待交换的两个整数:"<<endl;

cin>>a>>b;

myswap(&a,&b);

cout<<"调用交换函数后的结果是:"<<endl;

cout<<a<<" "<<b<<endl;

return 0;

}

运行结果截图:



//(3)引用做形参

#include<iostream>

using namespace std;

void myswap(int x,int y)

{

int t;

t=x;

x=y;

y=t;

}

int main()

{

int a,b;

cout<<"请输入待交换的两个整数:"<<endl;

cin>>a>>b;

myswap(a,b);

cout<<"调用交换函数后的结果是:"<<endl;

cout<<a<<" "<<b<<endl;

return 0;

}

运行结果截图:



知识点总结:第一个x,y是直接开辟一个新空间,原来的x,y值是不变的
后面是换的地址。
学习心得:学到了新知识
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: