C语言——函数教程.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言——函数教程.ppt

C语言——函数 函 数 在设计较复杂的程序时,我们一般采用的方法是:把问题分成几个部分,每部分又可分成更细的若干小部分,逐步细化,直至分解成很容易求解的小问题。这样的话,原来问题的解就可以用这些小问题来表示。 把复杂任务细分成多个问题的过程,就叫程序的模块化。模块化程序设计是靠设计函数和调用函数实现的。 1 函数的概念 2 函数的定义和调用 3 函数的参数传递方式 4 函数的嵌套调用与递归调用 5 变量的作用域和生命期 6 内部函数和外部函数 7 如何运行一个多文件的程序 8 函数的综合应用:编辑器第二版 1 函数的概念 函数是C语言程序的重要组成部分,C语言程序的功能可以通过函数之间的调用来实现,这就叫模块化程序设计方法。 将一个大的任务按功能细分成若干较小的模块,每一模块都成为功能单一、结构清晰、接口简单、容易理解的小程序; 将一些常用的功能模块编写成函数,放在函数库中供公共选用,避免了类似重复的代码。 任务、模块、函数之间的关系 在C语言中,函数(Function)是一个处理过程,可以进行数值运算、信息处理、控制决策,即将一段程序的工作放在函数中进行,函数结束时可以携带或不带处理结果。 标准库函数 C语言有丰富的库函数,这些函数的说明在不同的头文件(*.h)中。 2.1 函数的定义 1.有参函数定义的一般形式 类型标识符 函数名( 形式参数列表 ) { 声明部分 语句部分 } 【例2】编一函数,打印输出x 的n次方的值,其中n是整数。 分 析: 由于x和n都是可变的,所以应该把x 和n都作为函数的参数。由于不需要返回值,因此,函数类型说明为void型,若取名为power,则求x 的n次方函数可定义为: void power(float x,int n) /*函数定义*/ 【例3】编一个求任意两实数的最大值的函数。 分析:由于任意两实数是可变的,所以应该把它们作为函数的参数,再将其值返回给主调函数。 float max(float a,float b) {float c; if(ab)c = a; else c = b; return c; } 说 明 (1) 函数名:函数名是一个用户定义的标识符,它的命名规则同变量完全一样,在同一程序中,不能有同名的函数。 (2) 函数体: 用左、右花括号括起来的部分称函数体,它由声明部分和语句部分组成,声明部分。 (3) 函数类型:定义函数时,应说明函数类型,函数类型应与return语句中返回值的类型一致。如【例3】中的函数max(float a,float b)的函数值是a与b的最大值,函数值的类型float即为函数时类型,在函数名前加上返回值的类型说明float。 当函数无返回值时,函数名前应加上void 类型,如【例2】,在函数定义的语句部分中,可以有一返回语句 return也可以不带返回语句,该函数执行到最后一个花括号时,自动返回。 如果缺省函数类型,则系统一律按整型处理。 2.2 函数的参数和返回值 1. 函数的参数 当被调函数是有参函数时,主调函数和被调函数间有数据传递关系。 形式参数与实际参数的关系 形式参数在函数中是变量名, 在函数调用时,形参被分配相应的内存 实际参数是表达式??负责向对应的形参标识的内存单元传递数据 实参与形参必须个数相同 对应的形参和实参的类型必须一致  【例4】编一函数,求1+1/2+1/3+…+1/n的值。 分析: 由于该表达式的值与n有关,并且n是可变的,所以应该把n作为函数参数。显然,所求表达式的值应为double型,且需要返回double型值,所以计算1+1/2+1/3+…+1/n的函数可定义为: double sum(int n) {int i; double s=0.0; if(n=0) {printf(“The %d is invalid\n”, n);return 0;} for(i=1;i=n;i++)s += 1.0 /(double)i ; return s; } 2.3 函数的调用 1. 无返回值函数的调用 只要把函数作为一条语句处理,无返回值函数的调用格式为: 函数名( [ 实参列表 ] ); 这时不需要函数返回值,只要求函数完成一定的功能。 2.4 函数的声明 所谓函数声明是对函数的类型、函数名字、参数个数、类型和顺序的一个说明。 目的:让编译器利用这些信息去检查函数调用的合法性,保证参数的正确传递。 函数声明的一般形式是: ? 类型标识符 函数名(参数表); ? 注意 在调用函数之前,必须有相应的函

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档