函数应用模块.pptVIP

  1. 1、本文档共44页,可阅读全部内容。
  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文档。上传文档
查看更多
函数应用模块

函 数 应 用 §8.2 函数定义的一般形式 格式: 返回语句 形式: return(表达式); 或 return 表达式; 或 return; 功能:使程序控制从被调用函数返回到调用函数中, 如果有返回值,则同时把返回值带回给调用函数。 说明: 函数中可有多个return语句。 若无return语句,遇}时,自动返回调用函数。 若函数类型与return语句中表达式值的类型不一致,则以函数类型为准,对数值型数据自动进行类型转换。 对于不带回值的函数,应用“void” 定义函数为“空类型” §8.4 函数的调用 二、对被调用函数的声明和函数原形 1. 对被调用函数的要求 必须是已存在的函数(库函数或用户自定义函数) 如果是库函数用文件包含 #include *.h 如果是用户自定义函数应进行函数声明 2. 函数声明 一般形式: 函数类型 函数名(形参类型 [形参名],… ); 作用:告诉编译系统函数类型、参数个数及类型,以便检验。 下列情况下,可不作函数说明: 被调用函数定义出现在主调函数之前。 如果已在文件的开头(在所有函数之前),已对本文件中所调用的函数进行了声明,则在各函数中不必再声明。 若函数返回值是int型。(建议不采用,见P167说明) §8.5 函数的嵌套调用 例3:汉诺塔问题 参考程序 汉诺塔问题 参考程序 1、定义:在函数内定义,只在本函数内有效。 2、说明: main中定义的变量只在main中有效 不同函数中同名变量,占不同内存单元 形参属于局部变量 可定义在复合语句中有效的变量 局部变量可用存储类型:auto register static (默认为auto) 1、定义:在函数外定义,可为本文件所有函数共用。 2、有效范围:从定义变量的位置开始到本源文件结束, 及有extern说明的其它源文件。 二、动态存储方式与静态存储方式 内存中供用户使用的存储空间: 程序区: 静态存储区:程序运行期间分配固定存储空间 动态存储区:程序运行期间根据需要动态分配存储空间 三、变量存储类型 3、有如下函数调用语句:fun(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是( )。 A. 3 B. 4 C. 5 D. 有语法错误 A 4、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是 。 5、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是 。 6、下面fun函数的功能是将形参x的值转换成二进制数,所得二进制数的每一位数放在一维数组中返回,二进制数的最低位放在下标为0的元素中,其它依此类推。请填空: fun(int x, char b[ ]) { int k=0, r; do{r=x% ; b[k++]=r+48; x/= ; }while(x); b[k]=‘\0’; } 2 2 请将主函数补充完整。 §8.8 局部变量与全局变量 一、局部变量---内部变量 例 不同函数中同名变量 void main() { int a,b; a=3; b=4; printf(main:a=%d,b=%d\n,a,b); sub(); printf(main:a=%d,b=%d\n,a,b); } sub() { int a,b; a=6; b=7; printf(sub:a=%d,b=%d\n,a,b); } 运行结果: main:a=3,b=4 sub:a=6,b=7 main:a=3,b=4 运行结果:5 4 3 2 1 例 复合语句中变量 #define N 5 void main() { int i; int a[N]={1,2,3,4,5}; for(i=0;iN/2;i++) { int temp; temp=a[i]; a[i]=a[N-i-1]; a[N-i-1]=temp; } for(i=0;iN;i++) printf(%d ,a[i]); } float f1(int a) { int b,c; ……

文档评论(0)

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

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

1亿VIP精品文档

相关文档