上课课件(第4章).pdf

上课课件(第4章).pdf

ID:51506161

大小:6.23 MB

页数:16页

时间:2020-03-25

上课课件(第4章).pdf_第1页
上课课件(第4章).pdf_第2页
上课课件(第4章).pdf_第3页
上课课件(第4章).pdf_第4页
上课课件(第4章).pdf_第5页
资源描述:

《上课课件(第4章).pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2014/4/29Tuesday1、函数概述和分类2、定义函数的一般形式�函数的声明3、函数声明、参数和返回�函数的参数(实参和形参)�函数返回(return语句的三种形式)函数(Function)的应用4、函数的嵌套和递归调用5、变量的存储属性C语言用函数实现程序模块化,通过函例如,在这种方法对功能单一数,可以把一个大的问题分解成多个一个C语言源函数是为小问题来进行求解,这种方式即称为"程序文件由一个前面的学的程序是可行的。然模块化的程序设计",也叫做"自上而或多个函数组成了让我们下的程序设计方法".习中,我而,如果程序中有多可以更好们曾经编处要实现这一功能,地、更有程实现过且所求n值不同时

2、,函数之间可以相互调C程序的执行从条理地组函数之间相互独立,main函数开始,n!以及则需要在多处都将以用,或调用自身,但不存在从属关系织程序的不能调用main函数至main函数结1!+2!+3!上代码复制进去,并束而结束一种工具。+…+n!加以修改。求n!的程序代码:求1!+2!+…+n!的程序代码:#include“stdio.h”#include“stdio.h”voidmain()voidmain(){ints=1,k,n=10,sum=0;{for(k=1;k<=n;k++)ints=1,n=10,k;{s=s*k;sum=sum+s;for(k=1;k<=n;k++)}s=s*k;

3、printf("1!+2!+…+n!=%d",sum);printf("n!=%d",s);return0;}}12014/4/29Tuesday而如果将求阶乘的部分以函数来实现,则程序的结#include“stdio.h”intfactor(intn)构、条理都会简单、清晰得多。voidmain()intfactor(intn)#include“stdio.h”{{{voidmain()intfactor(int);{ints=1,k;ints=1,k;inti,sum=0;inta;for(k=1;k<=n;k++)for(k=1;k<=n;k++)for(i=1;i<=10;i+

4、+)a=factor(10);{printf("10!=%d",a);{s=s*k;s=s*k;a=factor(12);printf("%d!=%d",i,factor(i));}printf("12!=%d",a);returns;printf(“”);returns;a=factor(18);}}printf("18!=%d",a);}}}标准库函数:由系统提供,用户可以不必自己去编写程序段而直接调用这些函数。但必须打开相应的头文函数返回值的类型没有分号件。如printf()、scanf()等函数。用户自定义函数:为了实现用户的特殊需要而自编的函数。如intfactor(

5、intn){……}使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型只能返回一个值3、函数返回值意义和类型4、需要使用的包含文件有参函数:在调用函数时,需要进行参数传递的函把函数运算的结果回送给主调函数数,如factor(10);无参函数:如getchar();intfactor(intn)函数名:通常是intfactor(intn)"函数类型"指函数一个标识符,在一个{返回值的类型,也就{程序中除了主函数外是说,当该函数执行ints=1,k;其余函数的名字可以ints=1,k;完成以后,得到一个for(k=1;k<=n;k++)任意取,但应尽量做for(k=1;k<=

6、n;k++)什么结果。s=s*k;到见名知意。若省略此项,则认returns;s=s*k;后面的"()"表示为返回类型是int。}是函数。returns;若函数无返回值,结论:C中区分变量名和函数名的最简单办法就是看它后面}则应定义类型为void有没有圆括号(),若有则为函数名,否则就是变量名。22014/4/29Tuesdayintfactor(intn)intfactor(intn)形参表:函数定义时函数中所需变量的定义{{的参数称为形式参数,:形参及函数中的ints=1,k;形式参数彼此间用逗号变量均是在函数ints=1,k;for(k=1;k<=n;k++)分隔。每个参数应分别,for

7、(k=1;k<=n;k++)指明其类型。s=s*k;函数调,其存储s=s*k;形式参数省略时称无returns;单元会!returns;参函数,但此时函数名}}后的圆括号不能省。这个程序能单独执行吗?1表示不返回结果22333444455555不能省略void否则,函数类型被默认为int函数声明的形式即函数原型(Prototype),也就是对所定义函数的一个简要说明。如intfactor(intx

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

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

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