- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c010函数基础
第10讲 函数基础 本讲主要内容 一、函数概述 二、函数的定义 三、函数的调用 四、局部变量和全局变量 五、自动变量与静态变量 一、函数概述 函数的概念及作用 函数化结构是C语言程序的重要特征 使用函数,能提高程序设计效率 缩短程序代码,使程序简练紧凑 一、函数概述 引例: 求a!+b!+c! 一、函数概述 (求a!+b!+c!) 引入求阶乘函数 rfact(),将 程序优化为: 二、函数的定义 函数定义的一般形式 函数类型? 函数名(形式参数表) { 函数体 } 二、函数的定义 1. 函数定义举例 函数定义(一)如下: float rmax2(float x,float y) {float m; m=xy?x:y; return(m); } 例9-3 求和函数sum(),计算1+2+3+…+n-1+n的值。 三、函数的调用 主调函数与被调函数的概念及其关系 当函数b在函数a中使用时,称函数a为函数b的主调函数,函数b称为被调函数。 在主调函数中使用被调函数。 三、函数的调用 三、函数的调用 三、函数的调用 (1)函数调用以语句的方式出现,通常只完成一种操作,不带回返回值。 例如,调用例9-4的p_star()函数,输出20个连续“*”字符: 三、函数的调用 三、函数的调用 四、局部变量和全局变量 局部变量 在函数体内定义 只能在定义它的函数中使用 在一个程序的不同函数中可以定义同名的变量 函数的形参变量和在函数体内定义的变量都是局部变量 函数执行结束后形参变量立即消失 在函数体内定义的局部变量是否随函数结束而消失,要取决于变量的存储类型 局部变量举例 #include stdio.h void prn_1(int); /* 函数声明 */ void prn_2(); /* 函数声明 */ main() {int i; /* 定义局部变量i ,它仅在main()函数内有效 */ for(i=0;i10;i+=5) {prn_1(i); /* 用变量i作实参进行函数调用 */ prn_2(); } } void prn_1(int n) /* 输出整数值的函数 */ {int i; /* 定义局部变量i,它仅在prn_1()函数内有效 */ for(i=1;i=5;i++) printf(%5d,n+i); printf(\n); return;} void prn_2() /* 输出一条横线的函数 */ {int i; /* 定义局部变量i,它仅在prn_2()函数内有效*/ for(i=1;i30;i++) printf(%c,-); printf(\n); return; } 四、局部变量和全局变量 全局变量 在程序的任何一个函数体外定义。 在一个程序中,凡是在全局变量之后定义的函数,都可以使用在其之前定义的全局变量。 一个全局变量,可以被多个函数使用, 但并不一定能被所在程序中的每一个函数使用。 全局变量也有一定的作用范围。 局部变量和全局变量举例 int a=3,b=5; /* 定义全局变量 */ max(int a,int b) { return(ab?a:b); /* a、b是形参 */ } main() { int a=8; /* 定义局部变量 */ printf(MAX=%d\n,max(a,b)); /* a是局部变量,b是全局变量 */ } 五、自动变量与静态变量 五、自动变量与静态变量 静态变量举例 函数基础-小结 用户函数要先定义后使用。 实参和形参按照各自在参数表中的位置对应传值。 一般先声明后调用。 局部变量只在定义它的函数内部使用,全局变量可以在多个函数中使用。 auto型变量在函数被调用时为其分配存储空间,函数执行结束时存储空间自动释放。 static型变量在编译时即为其分配存储空间,一个程序中的static型变量只在编译时被初始化一次。 * 《C语言程序设计》 第10讲 函数基础 数学计算机科学系 教学要求: 掌握自定义函数的一般结构及定义函数的方法; 掌握形参、实参、函数原型等重要概念; 掌握函数声明、函数调用的一般方法; 了解局部变量、全局变量的概念; 掌握auto型和static型局部变量的特点和用法。 函数的分类 标准库函数 用户自定义函数 main( ) {int a,b,c,i; long t,sum; printf(input a,b,c:); scanf(%d,%d,%d,a,b,c); for(t=1,i=1;i=a;i++) t=t*i; sum=
文档评论(0)