- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[英语学习]ch7.ppt
第7章 函数 用函数解决问题 函数把较大的任务分解成若干个较小的任务,并提炼出公用任务 程序员可以在其他函数的基础上构造程序,而不需要从头做起 设计得当的函数可以把具体操作细节对程序中不需要知道它们的那些部分隐藏掉,从而使整个程序结构清楚 分而治之、信息隐藏 函数的分类 库函数 自定义函数 函数定义(definition) 返回值类型 函数名 (参数表){ 函数体 return 表达式;} 返回值类型与return语句配合 如果不需要返回值,则应该用void定义返回值类型,同时return语句之后不再需要任何表达式 当函数执行到return语句时,就中止函数的执行,返回到调用它的地方 函数内部可以定义只能自己使用的变量,称内部变量。参数表里的变量也是内部变量 函数名命名 Windows风格函数名命名 用大写字母开头的单词组合而成 变量名形式 “名词”或者“形容词+名词” 如变量名oldValue与newValue等 函数名形式 “动词”或者“动词+名词”(动宾词组) 如函数名GetMax()等 对函数接口加以注释说明 /* 函数功能:实现××××功能 函数参数:参数1,表示××××× 参数2,表示××××× 函数返回值: ××××× */ 返回值类型 函数名 (参数表) { 函数体 return 表达式; } 例1 计算两个整数的平均数 /* 函数功能: 计算平均数 函数入口参数: 整型x,存储第一个运算数 整型y,存储第二个运算数 函数返回值: 平均数 */ int Average(int x, int y) { int result; result = (x + y) / 2; return result; } 函数调用(call) 调用函数时,必须提供所有的参数 提供的参数个数、类型、顺序与定义时相同 有返回值时 放到一个数值表达式中,如c = max(a,b); 作为另一个函数调用的参数,如 c = max(max(a,b),c); printf(%d\n, max(a,b)); 无返回值时 函数调用表达式,如display(a,b); 例1 使用了Average函数的main() main() { int a = 12; int b = 24; int ave; ave = Average(a, b); printf(Average of %d and %d is %d.\n, a, b, ave); } 函数原型(prototype) 调用一个函数之前,先要对其返回值类型、函数名和参数进行声明(declare) 不对函数进行声明是非常危险的 声明时不要省略参数以及返回值的类型 变量的作用域 指在源程序中定义变量的位置及其能被读写访问的范围 分为 局部变量(Local Variable) 全局变量(Global Variable ) EX1判断是否为素数 #include stdio.h #include math.h main() { int n,ret; printf(“Input n:”); scanf(“%d”,n); ret = IsPrimeNumber(n); if(ret != 0) printf(“%d is a prime number\n”,n); else printf(“%d is not a prime number\n”,n); } /* 函数功能:判断参数是否是素数 函数入口参数:number为整型数,要求为正整数 函数返回值:非0值表示是素数,否则不是素数 */ int IsPrimeNumber(int number) { int i; if(number = 1) return 0; EX2数组的行列转置 #include stdio.h #define N 3 void main() { int arr[N][N]; int i = 0,j=0; void transform(int a[N][N]); for(i = 0;i N;i++) for(j = 0;j N;j++) scanf(%d,arr[i][j]); transform(arr); for(i = 0;i N;i++) { for(j = 0;j N;j++) printf(%d ,arr[i][j]); printf(\n); } } EX3字符串的连接 EX4统计字符串 EX7阶乘倒数之和 EX8统计某个数字的个数 无类型的函数 void
文档评论(0)