青海大学程序设计基础(第六章)ppt课件.ppt

青海大学程序设计基础(第六章)ppt课件.ppt

ID:58988978

大小:3.72 MB

页数:41页

时间:2020-09-27

青海大学程序设计基础(第六章)ppt课件.ppt_第1页
青海大学程序设计基础(第六章)ppt课件.ppt_第2页
青海大学程序设计基础(第六章)ppt课件.ppt_第3页
青海大学程序设计基础(第六章)ppt课件.ppt_第4页
青海大学程序设计基础(第六章)ppt课件.ppt_第5页
资源描述:

《青海大学程序设计基础(第六章)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、程序设计基础第六章函数与模块化程序设计函数的定义和调用6.1变量的作用域与存储类型6.2利用函数进行模块化程序设计6.36.1函数的定义和调用函数是构成C程序的基本构件。C程序是一系列函数的集合,每个函数都具有相对独立的单一功能。一个完整的C程序由主函数+被调函数来构成。6.1函数的定义和调用一个C程序可以分为若干个函数。每个程序有且只能有一个主函数(main),其他函数都是“字函数”。子函数可以互相调用,但主函数不能被调用。一个C源程序由一个或多个文件构成,一个源程序是一个编译单位。C语言中允许一个函数被多次调用,也允许函数调用自己本身(递归调用

2、)6.1函数的定义和调用6.1.1函数分类从用户角度标准函数(库函数):由系统提供用户自定义函数从函数形式无参函数有参函数使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件6.1函数的定义和调用6.1.2函数的定义一般格式合法标识符函数返回值类型缺省int型无返回值void函数体函数类型函数名(形参类型说明表){说明部分语句部分}现代风格:例有参函数(现代风格)intmax(intx,inty){intz;z=x>y?x:y;return(z);}例有参函数(现代风格)intma

3、x(intx,y){intz;z=x>y?x:y;return(z);}例空函数dummy(){}函数体为空例无参函数printstar(){printf(“**********”);}或printstar(void){printf(“**********”);}6.1函数的定义和调用6.1.3函数传统风格和例子函数类型函数名(形参表)形参类型说明{说明部分语句部分}传统风格:例有参函数(传统风格)intmax(x,y)intx,y;{intz;z=x>y?x:y;return(z);}6.1函数的定义和调用6.1.4函数的返回值返回语句形

4、式:return(表达式);或return表达式;或return;功能:使程序控制从被调用函数返回到调用函数中,同时把返值带给调用函数说明:函数中可有多个return语句若无return语句,遇}时,自动返回调用函数若函数类型与return语句中表达式值的类型不一致,按前者为准,自动转换------函数调用转换void型函数例无返回值函数voidswap(intx,inty){inttemp;temp=x;x=y;y=temp;}6.1函数的定义和调用6.1.5函数的调用调用形式函数名(实参表);说明:实参与形参个数相等,类型一致,按顺序一一对应实

5、参表求值顺序,因系统而定(TurboC自右向左)调用方式(1)直接以函数引用语句的形式出现例如:call_function(x,y,z);scanf("%d%d%d“,&i,&j,&k)6.1函数的定义和调用(2)函数在表达式中出现例如:y=8.25*min(x,y)*function(n);(3)在函数引用中以实参的形式出现例如:y=cos(tg(x));//也称嵌套调用main()a()b()调用a()调用b()END6.1函数的定义和调用在一个函数中调用另一函数(即被调用函数)需要具备哪些条件呢?被调用的函数必须是已经存在的函数(是库函数或用

6、户自己定义函数).(2)如果使用库函数,一般应在本文件开头用#include<*.h>预包含。(3)如果使用用户自己定义的函数,而且该函数与调用它的函数(即主调函数)在同一个文件中,一般还应该在主调函数中对被调用的函数作声明。例对被调用的函数作声明main(){floatadd(floatx,floaty);floata,b,c;scanf("%f,%f",&a,&b);c=add(a,b);printf(“sumis%f”,c);}floatadd(floatx,floaty){floatz;z=x+y;return(z);}6.1函数的定义和调

7、用【例】给定两整数M和N,求最大公约数分析:根据欧几里德的转展相除法,应先求出M和N中的较大者,再用较小的数去除较大的数;若能整除,则较小的数就是它们的最大公约数;若不能整除,则将原较小数当作大数,余数当作较小数再相除。相除后的新余数若为零,则上次的余数即为最大公约数。否则,再重复上述过程,直到余数为零为止。6.1函数的定义和调用(1)转展相除法求最大公约数的函数#include"stdio.h"gcd(intm,intn){inttemp,k;while(n!=0){temp=m%n;m=n;n=temp;}k=m;return(k);}(2)调

8、用gcd函数的主函数main(){intm,n,j,temp;scanf("%d%d",&m,&n);if(m

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

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

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