三种方式"/>
第二周项目—利用函数参数传递的三种方式
*Copyright (c)2017,烟台大学计算机与控制工程学院
*All rights reservrd.
*文件名称 :test.cpp
*作者:刘文平
*完成时间:2017年9月7日
*版本号:v1.0
*问题描述:解决函数参数传递
*输入描述:两个整数
*程序输出:交换后的两个整数
传值法:
#include<stdio.h>
using namespace std;
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;
}
传地址法:
#include<stdio.h>
using namespace std;
void myswap(int *p1, int *p2)
{int t;t=*p1;*p1=*p2;*p2=t;
}
int main()
{int a, b;int *p1,*p2;p1=&a;p2=&b;printf("请输入待交换的两个整数:");scanf("%d %d", &a, &b);myswap(p1,p2);printf("调用交换函数后的结果是:%d 和 %d\n", a, b);return 0;
}
引用法:
#include<stdio.h>
using namespace std;
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;
}
知识点总结:程序1不能成功将输入的两个数值进行交换,因为只是将实参的数传递给形参,并没有进行值之间的交换。三种进行函数参数的传递,引用法和传地址法能够有效的进行交换。
学习心得:初次接触csdn,有些生疏,多加练习,一定会有很大的提高。
更多推荐
第二周项目—利用函数参数传递的三种方式
发布评论