1 / 42
文档名称:

c语言函数.ppt

格式:ppt   页数:42
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c语言函数.ppt

上传人:wzt520728 2016/1/27 文件大小:0 KB

下载得到文件列表

c语言函数.ppt

相关文档

文档介绍

文档介绍:第八章函数 概述 C语言的程序除主函数外,还可以有若干个其他函数—块状结构。对于较大的程序来说,往往把其中相对独立的算法和功能定义成一个独立的函数,以供需要的地方调用。将一个程序分解成多个函数有如下优点:(1)减少代码的重复现象。(2)便于分工合作。(3)便于阅读。(4)便于独立算法的代码移植。 函数的定义和调用通过例子来说明如何定义和调用函数:对于求两个数中的最大值,有三个步骤:(1)从键盘输入两个数给a和b。(2)求a和b中的最大值。(3)输出结果。把求最大值的算法部分定义成一个独立的函数:函数类型函数名函数参数(形参)int max(int x,int y) main(){ int z; { int a,b,c; if(x>y)z=x; scanf(“%d%d”,&a,&b); else z=y; c=max(a,b); return(z); printf(“%d”,c); }} x y z a b c35说明:(1)程序由两个函数组成,它们逻辑上相互独立(功能、变量)。(2)程序的执行总是从主函数开始,主函数总是被执行一次,其他函数只有在被调用时才获得控制。(3)函数调用有两个作用:转移控制权和传递参数。(4)return的作用也有两个:交回控制权和返回结果。(5)实参可以是常量、变量或表达式,但类型要一致。定义一个函数除考虑算法外就是:如何设计函数的参数,通过何种途径交回结果。例:求自然数1—100中的素数之和。? prime( ? ) main() { int i; { int i,s=0; for(i=2;i<m;i++) for(i=1;i<=100;i++) if(m%i==0) ?if(prime(i) ) s+=i; ?printf(“\n %d”,s); } } int m)int returm 0;else return 1;return 1;例:求5!+7!+4!的值。? fac( ? ){ int i,s=1; for(i=1;i<=n;i++) s*=i; return(s); }main(){ printf(“\n%d”,fac(5)+fac(7)+fac(4)); }int nint main(){ float s,fac(); 对被调函数声明 s=fac(5)+fac(7)+fac(4); printf(“\n%f”,s);}float fac(int n){ int i; float s=1; for(i=1;i<=n;i++) s*=i; return(s);} 不需声明的情况:int char 主调函数在后若被调用的函数是库函数,则应用#include命令将所调用函数的有关信息包含进来,如:例:#include “”main() { float x,y; scanf(%f”,&x); y=sin(x); printf(“%f”,y); } 函数的嵌套调用C语言的函数定义虽然相互平行、相互独立的,但可以嵌套调用,形如:主函数函数A 函数B例:求多项式S= ∑i!+ ∑i!+ ∑i!的值。float fac(int n) {…} ? sum( ? ) { int i; float s=0; for( i=? ) s+=fac(i); return(s); } } main(){ printf(“%f”,sum(1,5)+sum(7,11)+sum(15,20); }157111520int a, int bfloati=a;i<=b;i++