C语言程序设计 作者 田祥宏 全书 第8章.pptVIP

C语言程序设计 作者 田祥宏 全书 第8章.ppt

  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文档。上传文档
查看更多
  本章学习要求:   1. 了解函数的定义,掌握函数的调用(一般调用、嵌套调用、递归调用),了解动态存储与静态存储的区别。   2. 理解内部函数与外部函数的概念,理解形式参数、实际参数、局部变量、全局变量的概念。   3. 了解条件编译和C程序项目设计,了解函数指针变量的概念及其使用。   4. 掌握return语句的使用,掌握参数的传递方式(值传递、地址传递),掌握变量作用域,掌握静态变量的使用,掌握函数嵌套调用和递归调用,掌握文件包含。   构成C语言程序的基本单位是函数。函数也是C程序中模块化程序设计的基础。C函数可分为标准库函数和用户定义函数两类。前者是系统定义的,它们的定义分别存在不同的头文件中,用户只要用?#include文件将头文件包含到程序中即可调用它们;后者则是用户为解决自己的特定问题而自行编写的。本章主要介绍用户定义函数的设计和调用问题。当然,在自行设计程序时,充分利用系统提供的库函数,可以大大减轻程序设计的负担。      一个较大的程序一般应分为若干个程序模块,每个模块用于实现一个特定的功能。一个C程序由一个主函数(main)和若干个其他函数(0个到多个)构成。程序的执行总是从主函数开始,到主函数结束。同一个函数可以被一个或多个函数调用任意多次。如图1.9中“子模块5”就被调用两次。下面举例予以说明。   例8.1 从键盘输入两个正整数m与n(m大于n),求m!/(m-n)!的值(即求)。   程序如下:   #include stdio.h   main() /*主函数*/   { int m,n;    long jiec(); /*声明函数,说明本函数中要调用的函数jiec(),   在本函数后面定义*/    printf(Please input m,n(mn): );    scanf(%d,%d,m,n);    while(m=n||n=0||m=0) /*本循环用来保证输入的m大于 n,并且m,n都是正整数*/   { printf(\nPlease repeat input m,n(mn): ); scanf(%d,%d,m,n);   }    printf(\nm!/(m-n)!=%ld\n, jiec(m)/jiec(m-n));    }   long jiec(int k) /*计算阶乘值的函数,函数名前的int 表示返回值的类型*/   { int s,i;    s=1;    for(i=1;i=k;i++) s*=i; /*计算1*2*3*…*k,并将计算结果赋 值给变量s*/    return(s); /*将计算得到的阶乘值返回调用函数 (这里是主函数)*/    }   上面程序中,一共有两个函数:一个是主函数main(),完成的功能是从键盘输入两个正整数m与n,通过调用函数jiec()计算并输出jiec(m)/jiec(m-n)的值;另一个函数是jiec(),它完成的功能是计算阶乘值,它通过从主函数得到一个参数k,计算k!,并将计算结果返回调用函数(主函数)。   下面作几点说明:   (1) 一个C程序可以由若干个函数组成,其中必须有且仅有一个主函数main()。C程序总是从主函数开始执行(不管它在程序中的什么位置),而其他函数只能被调用。   (2) 一个C程序可以由一个或多个源程序文件组成。C程序的编译以源程序文件为编译单位,而不是以函数为单位进行编译的。被调用函数与调用函数可以分别放在不同的源程序文件中,可以分别编写、分别编译,但最后必须连接成一个程序进行运行。   (3) 在C语言中,所有函数都是平行的,即在定义函数时是互相独立的,互不从属。即C函数不能嵌套定义。   (4) 程序中的?#include是将要用到的库函数的头文件包含到程序中来,这里因为用到了标准输入/输出函数scanf()和printf(),才使用?#include stdio.h。   (5) 如果被调用函数在调用函数的后面定义,则必须在调用函数中进行声明。函数声明的一般形式如下:    类型标识符 函数名([形参表列]);   其中“形参表列”是可以省略的。最简单声明函数的方式,就是将函数定义时的头部(在括号中含形参类型说明)作为声明的表达式,加上分号就构成了函数的声明语句。例如,例8.1中函数的声明就是将其省略,该声明可以写成以下两种形式:    long jiec(int);   或 long jiec(int k);   1. 函数的定义   在使用一个函数前,需要先对其进行定义。   函数定义通常由两部分组成:函

文档评论(0)

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

1亿VIP精品文档

相关文档