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

第二周 项目1-C/C++语言中函数参数传递的三种方式

2015-09-11 08:43 351 查看
问题及代码:

01./*

02. *Copyright(c) 2015,烟台大学计算机与控制工程学院

03. *All rights reserved.

04. *文件名称:main.cpp

05. *作    者:张佳慧

06. *完成日期:2015.9.11

07. *版 本 号:v1.0

08. *

09. *问题描述:将输入的两个数实行交换,并输出。

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

11. *程序输出:交换后的结果。

12.*/ 

13.#include <iostream>  

14.using namespace std; 

15.void myswap1(int x,int y); //对交换函数myswap1的提前声明   (传值)  

16.void myswap2(int *p1,int *p2); //对交换函数myswap1的提前声明    (传地址)  

17.void myswap3(int &x,int &y); //对交换函数myswap1的提前声明  (引用作形参)  

8.int main()
19.{
20.    int a,b;
21.    cout<<"请输入待交换的两个整数:"<<endl;
22.    cin>>a>>b;
23.    myswap1(a,b);    // 调用传值的交换函数myswap1
24.    cout<<"调用传值的交换函数后的结果是:"<<endl;
25.    cout<<a<<' '<<b<<endl;
26.    cout<<"请输入待交换的两个整数:"<<endl;
27.    cin>>a>>b;
28.    myswap2(&a,&b);    // 调用传地址的交换函数myswap2
29.    cout<<"调用传地址的交换函数后的结果是:"<<endl;
30.    cout<<a<<' '<<b<<endl;
31.    cout<<"请输入待交换的两个整数:"<<endl;
32.    cin>>a>>b;
33.    myswap3(a,b);    // 调用以引用作形参的交换函数myswap2
34.    cout<<"调用以引用作形参的交换函数后的结果是:"<<endl;
35.    cout<<a<<' '<<b<<endl;
36.    return 0;
37.}
38.void myswap1(int x,int y)//交换函数myswap1的具体定义
39.{
40.    int t;
41.    t=x;
42.    x=y;
43.    y=t;
44.}
45.void myswap2(int *p1,int *p2) //交换函数myswap2的具体定义
46.{
47.    int t;
48.    t=*p1;
49.    *p1=*p2;
50.    *p2=t;
51.}
52.void myswap3(int &x,int &y) //交换函数myswap3的具体定义
53.{
54.    int t;
55.    t=x;
56.    x=y;
57.    y=t;
58.}
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">运行结果:</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff"><img src="https://img-blog.csdn.net/20150911085914146?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">知识点总结:</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">1.函数调用的时候参数叫实参,定义的时候叫形参。</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">2.函数调用发生的时候,要求是参与形参的数量一致,类型要匹配。</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">3.运用传地址的交换函数myswap2.在调用myswap2函数时,已经把整数a和b 的地址作为实参传递给形参。在函数具体实现过程中也是对地址所指向的内存单元的内容进行交换。
</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">学习心得:</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">熟练掌握实参到形参传递过程的特点,掌握指针。</span>
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff"></span> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: