[数学]聊城大学c++7函数.pptVIP

  1. 1、本文档共83页,可阅读全部内容。
  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文档。上传文档
查看更多
[数学]聊城大学c7函数

第七章 函数 本章主要内容 函数的定义 函数的调用(参数传递) 变量的作用域 递归函数 函数重载 模板函数 函数指针 §7.1 函数的定义 7.1.1 函数定义格式 函数在面向过程的编程中是基本的功能模块,在面向对象程序设计中是描述对象行为的基本抽象单元. 函数声明的语法形式 [有效范围] 类型标识符 函数名(形式参数表) { 语句序列; } 7.1.2 函数定义格式举例 (1)void f1() {…} (2)static void f2(int x){…} (3)int f3(int x,int *p){…} (4)char * f4(char a[ ]){…} //形参相当于char *a (5)int f5(int x,double d){…} (6)int f6(int b[10],int n){…} //10可以被省略 (7)void f7(float c[ ][N],int m,float max){…} //N(第二维下标)值不可省略 (8)bool f8(ElemType * bt,ElemType item){…} 举例 编写一个求x的n次方的程序 #include iostream.h double power (double, int); void main( ) { cout 5 to the power 2 is power(5,2) endl; } double power (double x, int n) { double val = 1.0; while (n--) val = val*x; return val ; } 7.1.3 几点说明 ①函数原型语句 一个函数的原型语句就是其函数头的一个拷贝 函数原型语句中的形式参数:可以与函数头中参数不同名;可以只给出参数类型。 ②函数定义中的形式参数 形式参数表—参数为任意类型 (type1 name1, type2 name2,...,typen namen) i. 常量形参:若只允许访问形参而不许修改其值,则可把该形参用const说明为常量: void ff(const int x, char y); ii.默认形参:可对参数表末尾的一个或连续若干个参数给出默认值。 如:void ff1( int x[ ],char op=‘+’, int y=0) { … } 作用:调用函数ff1时,若实参表中没给出op和y值,则将采用其形参表中默认值; 若实参表中给出op和y的值,则采用给出的值。 如: coutff1(x, ‘-’)endl; eg. 默认形参值的作用 例如: 注意:在缺省形参值的右面不能有非缺省形参值的参数。 eg: int add(int x,int y=5,int z=6); //ok! int add(int x=1,int y=5,int z);//error int add(int x=1,int y,int z=6);//error 若某函数具有专门的函数原型语句,则其参数的默认值需在函数原型中给出。 eg: iii. 数组形参:某类型数组参数实际上是一个指向该类型的指针参数 一维:数据类型数组名[ ] 等价于: 数据类型 *指针变量名 eg. sort(int a[]) --- sort(int *a) 二维: 数据类型数组名[] [第二维尺寸] 等价于: 数据类型 (*指针变量名)[第二维尺寸] eg.sort(char b[][4])---sort(char (*b)[4]) 注意:定义一维数组参数需另外指明数组长度, 定义二维数组参数时,第二维长度要给出;第一维长 度另外指出。因此,数组作为参数时一般还需要一个 变量为其传递长度。 说明:形参还有非引用参数和引用参数之分,它们的区别体现在参数传递方式上,在第二节 “函数调用”中讲述. 引例:非内联函数调用和将被调函数中语句直接写到调用之处: #includeiostream.h double CalA(double radius) { return 3.14*radius*radius; } int main( ) { double r(3.0); double area; area=CalA (r); coutareaendl; return 0; } 例7-1 内联函数应用举例 #includeiostream.h inline double CalA (double radi

文档评论(0)

jiupshaieuk12 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档