第七章函数11年11月24月.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章函数11年11月24月

第七章 函数及变量存储类型;第七章 函数及变量存储类别 ;第7章 函数及变量存储类别;第七章 函数及变量存储类型;7.1 函数基础与C程序结构;7.1 函数基础与C程序结构;⑴ 一个C源程序可以由一个或多个源程序文件组成。C编译系统在对C源程序进行编译时是以文件为单位进行的。 ⑵ 一个C源程序文件可以由一个或多个函数组成。所有函数都是独立的。主函数可以调用其它函数,其它函数可以相互调用。 ⑶ 在一个C程序中,有且仅有一个主函数main。C程序的执行总是从main函数开始,调用其它函数后最终回到main函数,在main函数中结束整个程序的运行。; 库函数;1.调用C语言标准库函数时,需要在程序的开头使用include命令包含头文件;7.2 函数的定义和返回值;7.2.1 函数定义的语法;7.2.1 函数定义的语法;【例7.1】编写求两个双精度数之和的函数。;函数的返回值是通过return语句带回到主调函数的;???例】计算并输出圆的面积。;7.2.2 函数的返回值;例题分析;7.3 函数的声明;7.3 函数的声明;7.3 函数的声明;7.3 函数的声明;7.3 函数的声明;例题分析;7.3.2 函数声明的位置;7.4 函数的调用;7.4 函数的调用;例题分析;7.4 函数的调用;例题分析;7.5 调用函数和被调用函数之间的参数传递;有关形参和实参的说明: ;void swap(int x, int y) { int t; t=x; x=y; y=t; printf(%d %d ,x ,y); } main( ) { int a= 3,b=4; swap(a,b); printf(%d %d ,a,b); };例7.2 以下程序试图通过调用swap函数,把主函数中变量x和y中的数据进行交换。请观察程序的输出结果。 程序代码如下: #includestdio.h void swap(int ,int); /*声明函数原型*/ void main() { int x=10,y=20; printf(“(1)x=%d y=%d\n,x,y); swap(x,y); /*调用函数*/ printf(“(4)x=%d y=%d\n,x,y); } void swap(int a,int b) /*定义函数*/ { int t; printf(“(2)a=%d b=%d\n,a,b); t=a;a=b;b=t; printf(“(3)a=%d b=%d\n,a,b); };程序输出如下: (1)x=10 y=20 (2)a=10 b=20 (3)a=20 b=10 (4)x=10 y=20 ;例函数的嵌套调用;递归调用过程;例 用递归方法求Fibonacci数列。;void sub(int a,int b) { int c; a=a+b; b=b+a; c=b-a; printf(sub:\ta=%d b= %d c= %d\n,a,b,c); };int a = 5; void f(int x, int y) { int b,c; b=a+x; c=a-y; printf(%d\t%d\t%d\n,a,b,c); };变量的存储类别;变量的存储类别;变量定义语句的一般形式;⑴ 内存分配 调用函数或执行分程序时在动态存储区为其分配存储单元,函数或分程序执行结束,所占内存空间即刻释放。 ⑵ 变量的初值 定义变量时若没赋初值,变量的初值不确定;如果赋初值则每次函数被调用时执行一次赋值操作。 ⑶ 生存期 在函数或分程序执行期间。 ⑷ 作用域 自动变量所在的函数内或分程序内。;2.静态变量(static类别);⑴ 内存分配 编译时,将其分配在内存的静态存储区中,程序运行结束释放该单元。 ⑵ 静态变量的初值 若定义时未赋初值,在编译时,系统自动赋初值为0;若定义时赋初值,则仅在编译时赋初值一次,程序运行后不再给变量赋初值 。 ⑶ 生存期 整个程序的执行期间。 ⑷ 作用域 局部静态变量的作用域是它所在的函数或分程序。全局静态变量的作用域是从定义处开始到本源文件结束。;3.外部变量(extern类别);⑴ 内存分配 编译时,将其分配在静态存储区,程序运行结束释放该单元。 ⑵ 变量的初值 若定义变量时未赋初值,在编译时,系统自动赋初值为0。 ⑶ 生存期 整个程序的执行期间。 ⑷ 作用域 从定义处开始到本源文件

文档评论(0)

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

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

1亿VIP精品文档

相关文档