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

问题及代码:

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> 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值