C语言程序设计基础 第7章-函数.ppt

C语言程序设计基础 第7章-函数.ppt

ID:56430748

大小:239.00 KB

页数:34页

时间:2020-06-18

C语言程序设计基础 第7章-函数.ppt_第1页
C语言程序设计基础 第7章-函数.ppt_第2页
C语言程序设计基础 第7章-函数.ppt_第3页
C语言程序设计基础 第7章-函数.ppt_第4页
C语言程序设计基础 第7章-函数.ppt_第5页
资源描述:

《C语言程序设计基础 第7章-函数.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章函数与预处理命令7.1概述7.2函数的定义与调用7.3数组作函数参数7.4函数的嵌套调用和递归调用7.5局部变量和全局变量及其作用域7.6变量的存储类别及变量的生存期7.7函数的存储分类2021/7/2917.1概述①程序结构清晰,可读性好。②减少重复编码的工作量。③可多人共同编制一个大程序,缩短程序设计周期,提高程序设计和调试的效率。使用函数的好处……C程序源程序文件n函数1函数m……源程序文件1函数1函数n2021/7/292【例7.1】求一个整数的立方。intcube(intx)/*函数定义*/{return(x*x*x);}main(){in

2、tf,a;printf("Enteranintegernumber:");scanf("%d",&a);f=cube(a);printf("%d*%d*%d=%d",a,a,a,f);}程序运行情况如下:Enteranintegernumber:22*2*2=8函数调用程序的执行总是从main函数开始2021/7/293⑴一个C源程序可以由一个或多个源程序文件组成。C编译系统在对C源程序进行编译时是以文件为单位进行的。⑵一个C源程序文件可以由一个或多个函数组成。所有函数都是独立的。主函数可以调用其它函数,其它函数可以相互调用。⑶在一个C程序中,有

3、且仅有一个主函数main。C程序的执行总是从main函数开始,调用其它函数后最终回到main函数,在main函数中结束整个程序的运行。说明2021/7/294⑷函数的种类从函数定义形式分:①有参函数:在主调(用)函数和被调(用)函数之间通过参数进行数据传递,如:intcube(intx){…}②无参函数:如:getchar()在调用无参函数时,主调函数不需要将数据传递给无参函数。从使用的角度看:①标准函数(库函数)库函数是由系统提供的。如:getchar()、sin(x)等。在程序中可以直接调用它们。附录A列出了C的部分库函数。②用户自定义函数。如:例7.

4、1中的cube函数。2021/7/2957.2.1函数的定义函数定义的一般形式函数类型函数名(类型名形式参数1,…){说明语句执行语句}例如:求两个数的最大值。intmax(intx,inty){intz;z=x>y?x:y;return(z);}类型省略时默认为int类型没有形式参数为无参函数2021/7/296intmax(x,y)intx,y;{intz;z=x>y?x:y;return(z);}intmax(x,y){intx,y;……}或intmax(intx,y){……}或intmax(x,y)intx,y,z;{z=x>y?x:y;retur

5、n(z);}花括号中也可以为空,这种函数叫空函数。不能在函数体内定义其他函数,即函数不能嵌套定义。形参也可以这样定义如下定义都是错误的√2021/7/297函数名(实参表列)在C语言中,把函数调用也作为一个表达式。因此凡是表达式可以出现的地方都可以出现函数调用。例如:①welcome();②if(iabs(a)>max)max=iabs(a);③m=max(c,max(a,b));7.2.2函数的调用函数调用的一般形式:2021/7/298intsum100(){inti,t=0;for(i=1;i<=100;i++)t+=i;return(t);}m

6、ain(){ints;s=sum100();printf("%d",s);}程序输出结果:5050intsum(intx){inti,t=0;for(i=1;i<=x;i++)t+=i;return(t);}main(){ints;s=sum(100);printf("%d",s);}【例7.3】求1~100的累加和。思考:两个程序有何不同程序输出结果:50502021/7/299voidswap(intx,inty){intz;z=x;x=y;y=z;printf("x=%d,y=%d",x,y);}main(){inta=10,b=20;s

7、wap(a,b);printf("a=%d,b=%d",a,b);}7.2.3函数参数与函数的返回值1.函数的形式参数与实际参数程序输出结果:x=20,y=10a=10,b=20形式参数(形参)实际参数(实参)【例7.4】编一程序,将主函数中的两个变量的值传递给swap函数中的两个形参,交换两个形参的值。单向值传递2021/7/2910有关形参和实参的说明:①当函数被调用时才给形参分配内存单元。调用结束,所占内存被释放。②实参可以是常量、变量或表达式,但要求它们有确定的值。③实参与形参类型要一致,字符型与整型可以兼容。④实参与形参的个数必须相等。在

8、函数调用时,实参的值赋给与之相对应的形参。“单向值传递”。注意:在

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

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

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