网站大量收购独家精品文档,联系QQ:2885784924

[工学]第5章 函数.ppt

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

采用递归形式编写计算下列式子的函数: F = 1+1/2+1/3+…+1/10 5.5.1 作用域 标识符作用域: 标识符声明有效的C语言程 序文本区域。 1、顶层(函数外部)标识符 2、函数定义中的正式参数 有效范围(即作用域): 从声明标识符的位置开始到函数体结束都是有效的。 3、函数原型中的正式参数 4、块标识符 有效范围(即作用域)块中声明的标识符,从其声明位置延伸到块结束都是有效的。如果内层块与其外层块声明了相同的标识符,则内层块区域是以其声明的标识符为准。 5、语句标号 语句标号是用来标识语句的位置,其在所属的整个函数体中都有效 。 6、预处理器宏 有效范围(即作用域):它从声明的#define命令延伸到源程序文本结束或第1个取消定义的#undef命令处,都是有效的。 5.5.2 信息隐蔽 通过作用域原则,只允许其他函数访问函数接口,而阻止访问本函数所属的标识符或数据,这种情形称为信息隐蔽。 #includestdio.h #includemath.h float triangle_area(float a1, float b1, float A1); void display_area(float S); int main(void) { float a, b, A, S; printf(\nInput the length of two sides of triangle: ); scanf( %f %f , a, b ); printf(\nand input the angle with the two sides: ); scanf( %f , A); S=triangle_area(a, b, A); display_area(S); return 0; } float triangle_area(float a1, float b1, float A1) { float S1; S1=a1*b1*sin(A1) / 2; return S1; } void display_area(float S) { printf(\nThen the area is:%f , S); } 声明位置:在函数之外进行声明。 用途:为本源文件中的所有函数所共享,不需要通过形参传递,即可以使用。 有效范围(即作用域):从声明标识符的位置开始到本源文件的结束。 int p=1 , q=5 ; float f1(int a) { int b , c ; ….. } char c1 , c2 ; char f2( int x , int y) { int i , j ; …. } main( ) { int m , n ; ….. } 外部变量 c1,c2 的作用范围 外部变量 p,q 的 作用范围 例如: 例如: int f1(int a) { int b , c ; ... } char f2(int x , int y) { int b , c ; ... } a 的有效范围 x,y的有效范围 有效范围(即作用域):与函数定义中的正式参数完全一样从声明标识符的位置开始到原型结束都是有效的。 例如: int f1(int a) {int b , c ; ... } char f2(int x , int y) {int b , c ; ... } main( ) {int m , n ; ... } b,c 的有效范围 b,c 的有效范围 m,n 的有效范围 #includestdio.h void main( ) { int a , b ; …. { int c ;

文档评论(0)

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

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

1亿VIP精品文档

相关文档