函数参数和其传递方式教学方法探析

函数参数和其传递方式教学方法探析

ID:31680803

大小:53.75 KB

页数:4页

时间:2019-01-17

函数参数和其传递方式教学方法探析_第1页
函数参数和其传递方式教学方法探析_第2页
函数参数和其传递方式教学方法探析_第3页
函数参数和其传递方式教学方法探析_第4页
资源描述:

《函数参数和其传递方式教学方法探析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、函数参数和其传递方式教学方法探析摘要:在C语言和数据结构的程序设计中,不同的参数类型,其有着不同的传递方式。值传递和地址传递非常容易混淆,不好理解,容易出错。该文就值传递和地址传递的教学方法分别进行探讨。关键词:参数;值传递;地址传递中图分类号:TP37文献标识码:A文章编号:1009-3044(2014)09-1952-02函数是面向过程的程序设计中的基本组成部分,多个函数像搭积木一样进行叠放之后就能构成程序,这也正是模块化程序设计的特点。程序要想执行其对应功能时,通过函数间相互调用来实现,这就如同上下级或同事间的一个电话,将任务在电话中说明,对应的函数就会执行其对应的功能,之后再

2、将执行结果反馈给打来电话的上机或平级,打来的电话内容其实就是传递来的参数,而打回去的电话信息就是函数调用后的返回值。电话打给不同的人,执行任务的结果不一定完全相同,因此,正确理解函数中的各个概念,对比和总结函数参数传递的规律或原则,是正确进行程序设计、函数调用的前期保障,也是程序设计和开发成功的关键。该文重点探讨程序设计中函数的参数及其传递方式的教学方法。1参数的类型不同,其传递方式也不完全相同参数分为形式参数和实际参数两类。形式参数简称形参,是在定义函数时,函数名后面小括号内的参数,称为被调函数中的参数。实际参数简称实参,是在调用函数时,函数名后面小括号内的参数,称为主调函数中的参

3、数。在函数调用时,主调函数调用被调函数如同给被调函数播去电话,与此同时就将实参传递给了形参,然后执行被调函数的函数体。总体上看,参数的传递方式分为两种:值传递和地址传递。值传递是指形参和实参分别占用不同的存储单元,只能将实参的值传递给形参,而不能将形参的值传递给实参,形参值的改变不影响与其对应的实参。地址传递是指实参和形参实际上占用同样的存储区域,在函数调用时,是把实参的起始地址传递给形参。换句话说,形参中某元素的改变,将直接影响到与其对应的实参中的元素。在做题时,值传递和地址传递非常容易混淆,不好理解,容易出错。2值传递和地址传递方式的对比教学法2.1基本数据类型作为函数参数C语言

4、中的基本数据类型有四种,即字符型、整型、和单、双精度浮点型。当它们作为函数参数时,实参和形参之间的数据传递为值传递。例如程序如下:^include#ineludeintmultlO(intn){n*=10;return(n);}main(){intnum=5,resuIt;resuIt=multlO(num);printf(,‘result=%d",resuIt);printf("num二%d",num);system("pause");}运行结果是:结果表明,尽管形参n的值在multlO函数中被改变了,但由于实参num和形参n分别占用不同的单元,所以形参n的改变,并不影响与

5、其对应的实参num的值,multlO函数调用之前num的值是5,调用之后num的值仍然是5。另外,单个数组元素可以作为函数参数,同此情形完全一样,也是值传递。2.2数组名作为函数参数由于数组名代表着整个存储空间的起始地址,或者说其值等于第一个元素的起始地址。即:定义inta[10];时,则有:a=&a[0]o所以,当使用数组名作为函数参数时,其参数传递是地址传递方式,函数的调用,实际上是把实参数组的起始地址传递给形参数组,形参数组和实参数组共同占用存储单元,只要形参数组中的某一元素值改变,将直接影响到与其对应的实参数组中的元素值的改变。例如:^include^includevoidA

6、DD1(inta[],intn){inti;for(i=0;i^includevoidswap(int*x,int*y){inttemp;temp=*x;*x=*y;*y=temp;}intmain(){intx=44,y=88;int*ptrl,*ptr2;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。