第八章 函数 V2.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章 函数 V2

模块化程序设计(函数) C语言:函数式语言 在C程序设计中通常: 将一个大程序分成几个子程序模块(自定义函数) 将常用功能做成标准模块(标准函数)放在函数库中供其他程序调用 main() {int x,y,z; scanf(%d,%d,x,y); z=max(x,y); printf(MAX=%d,z); } int max(int a,int b) {int c; if(ab)c=a; else c=b; return c; } 如果把编程比做制造一台机器,函数就好比其零部件。 可将这些“零部件”单独设计、调试、测试好,用时拿出来装配,再总体调试。 这些“零部件”可以是自己设计制造/别人设计制造/现在的标准产品 而且,许多“零部件”我们可以只知道需向它提供什么(如控制信号),它能产生什么(如速度/动力),并不需要了解它是如何工作、如何设计制造的——所谓“黑盒子、黑箱”。 编写一个儿童算术能力测试软件 main() {char ans=‘y’; clrscr(); /*调用清屏函数*/ cover(); /*调用软件封面显示函数*/ password(); /*调用密码检查函数*/ while(ans==’y’||ans==’Y’) {question(); /*调用产生题目函数*/ answers(); /*调用接受回答函数*/ marks(); /*调用评分函数*/ results(); /*调用结果显示函数*/ printf(“是否继续练习?(Y/N)\n”);/*调用输出函数*/ ans=getchar();} /*调用输入函数*/ printf(“谢谢使用,再见!”); /*调用输出函数*/ } 函数使用常识 1、C程序执行总是从main函数开始,调用其它函数后总是回到main函数,最后在main函数中结束整个程序的运行。 2、一个C程序由一个或多个源(程序)文件组成,可分别编写、编译和调试。 3、一个源文件由一个或多个函数组成,可为多个C程序公用。 4、C语言是以源文件为单位而不以函数为单位进行编译的。 5、所有函数都是平行的、互相独立的,即在一个函数内只能调用其他函数,不能再定义一个函数(嵌套定义)。 6、一个函数可以调用其他函数或其本身,但任何函数均不可调用main函数。 7、从一般编程用户角度看,函数有两种: 标准函数,即库函数。由系统提供,用户不必自己定义这些函数,可以直接使用它们。不同系统提供的库函数的数量和功能不同,当然有一些基本的函数是共同的。 用户自己定义的函数(自定义函数),以解决用户的专门需要。 8、从函数的形式看,函数分两类: 无参函数。在调用无参函数时,主调函数并不将数据传送给被调用函数,一般用来执行指定操作。无参函数可以带回或不带回函数值,但一般以不带回函数值的居多。 有参函数。在调用函数时,在主调函数和被调用函数之间有参数传递,也就是说,主调函数可以将数据传给被调用函数使用,被调用函数中的数据也可以带回来供主调函数使用。 函数定义 无参函数定义 类型标识符 函数名() {声明部分 语句 } 无参数函数一般不需要返回值,因此可以不写类型标识符。 无参函数 main() {int a; .......} clrscr() {.....} getch() {.....} 有参函数定义: 类型标识符 函数名(形式参数表列) {声明部分 语句 } 例: int max (int x,int y) {int z; z=xy?x:y; return(z); } 有参函数 c=max(x,y); printf(%d,a); scanf(%d,a); gets(a); 注意:上面的都是对函数的调用。 不是函数的定义(函数原型)!!! “空函数” dummy() {} 没有函数体,不起实际作用。常用作标注以后要补充或扩充的模块。 注意: 定义函数时不指定函数类型,系统自动指定函数类型为int。数据类型为int时,可以省略。 main() {int x,y,z; scanf(%

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档