C语言程序设计 教学课件 作者 孟庆昌 第06章-.pptVIP

C语言程序设计 教学课件 作者 孟庆昌 第06章-.ppt

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

第6章 函数和数据存储结构人民邮电出版一个较大的程序一般应分为若干个模块,每个模块完成一个特定的功能。在C语言中,这些程序模块就是函数。函数是C语言的基本构件。一个C源文件中可包含一个或多个函数,但一个函数的源代码只能在一个源文件中存放。一个较大的C程序可以存放在多个源文件中。进行编译时,把每个C程序源文件作为一个单独的编译单位,而不是以函数为单独的编译单位。在C语言中,对一个变量的定义除了要指明其类型外,还要指出其存储类。变量的存储类规定了变量的存在时间、可以引用的范围以及存放它的硬件等。退出

函数定义main() 函 数函数调用函数返回值和函数类型说明函数的递归调用void类型和可变参数函数数据存储类人民邮电出版

6.1 函数定义6.1.1经典C中函数定义形式经典C中函数定义的一般形式是:类型名称(参数表)参数说明{数据说明语句}人民邮电出版

例6-1:利用函数计算一个数的立方。/*Demonstratesasimplefunction.*/#includestdio.hmain(){人民邮电出版/*函数类型说明*/longcube();longanswer;intinput;printf(Enteranintegervalue:);scanf(%d,input);

answer=cube(input);printf(\nThecubeof%dis%d.\n,input,anreturn0;}longcube(x)intx;{longa;a=x*x*x;return(a);}人民邮电出版

对经典C中函数定义的说明:①类型―出现在函数名cube前面的关键字long表示该函数的类型。从语法规则上讲,函数类型可以是除函数和数组以外的任何类型,可以是int型、char型等。但对一个具体函数的定义来说,它的类型是惟一的,并且通常与其返回值的类型一致。②函数名―函数名称可以是C语言中任何合法的标识符。函数名称后面一定要有一对圆括号(如果有参数,则它们放在圆括号之内),由它表示该标识符是函数名。在一个程序中,函数的名称应是惟一的。人民邮电出版

③参数―根据实际需要,参数部分可有可无。如果参数多于一个,则所有函数的参数之间都用逗号隔开。函数定义中的参数一般称为形式参数,简称形参。④参数说明―如果有参数,则应对它们的类型一一作出说明。⑤函数体―函数体由一对花括号(“{}”)括起来,其中可以包含数据说明和语句。函数的功能就是由函数体内的各个语句实现的。人民邮电出版

6.1.2标准C中函数定义形式标准C语言还提供了另一种形式的函数定义——函数原型定义,即把参数表和参数说明合并在一起,放在原来参数表的位置。例如:doublepower(doublex,intn){doublep;if(n>0)for(p=1.0;n>0;n――)p=p*x;elsep=1.0;return(p);}人民邮电出版

这种风格的函数定义的一般形式是:人民邮电出版函数类型函数名(类型参数1,类型参数2,…,类型参数N){数据说明语句}两种形式的定义主要差别在于:按函数原型方式定义的函数,在以后对它进行调用时要对实参作强制性的匹配和类型转换;而传统形式的函数定义,则没有这种安全性检查的功能。另外,函数原型定义中要明确指出函数的类型。

在C语言中,函数定义是互相独立的,一个函数并不从属于另一个函数。就是说,定义函数时不允许嵌套,即在一个函数的定义中不能包含对另外函数的定义。例如,下面函数定义的形式不正确:intfirst_func(inta,intb)/*第一个函数的定义*/{…intsecond_func(intx,inty)/*第二个函数的定义*/{…}…}人民邮电出版

形式为:intfirst_func(inta,intb)/*第一个函数的定义*/{…second_func(m,n);/*对第二个函数的调用*/…}intsecond_func(intx,inty)/*第二个函数的定义*/{…}人民邮电出版

在函数定义中,可以包含对其他函数的调用,后者又可以调用另外的函数,甚至自己调用自己,即递归调用。在C语言中,对函数的定义和说明是不同的。C语言中还有“空函数”,它的形式是:类型名称(){}人民邮电出版

例6-2:写一个计算调和级数部分和的程序。调和级数前n项和H(n)的计算公式是:这里采用欧几里德算法求两个整数u和v的最大公因子,其算法是:把u模v(u%v),结果放在v中,原来v的值放在u中。如果v的值不等于0,就重复上述步骤,直至v的值为0,最后u中保留的值就

文档评论(0)

150****4698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档