《c语言程序设计教学课件》第6章.ppt
《《c语言程序设计教学课件》第6章.ppt》由会员分享,可在线阅读,更多相关《《c语言程序设计教学课件》第6章.ppt(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、(The C Language ProgrammingThe C Language Programming)C C语言程序设计语言程序设计2章节名称第第6 6章章 函数与编译预处理函数与编译预处理(6.4-6.66.4-6.6)教学目的与要求掌握变量作用域与存储方式的概念掌握变量作用域与存储方式的概念 ,掌握编译预处理的,掌握编译预处理的概念,通过程序举例掌握自定义函数在程序中的应用。概念,通过程序举例掌握自定义函数在程序中的应用。教学内容6.4 6.4 变量作用域与存储方式变量作用域与存储方式 6.5 6.5 编译预处理编译预处理6.6 6.6 内部函数和外部函数内部函数和外部函数 6.7
2、6.7 程序举例程序举例重点变量作用域与存储方式的概念。变量作用域与存储方式的概念。难点变量作用域与存储方式的概念。变量作用域与存储方式的概念。作业P104 三、编程题:三、编程题:3教学手段ppt课件、课堂练习、提问回答。教学过程(组织与方法)回顾上次课主要内容、介绍本次课重点、难点 讲解本次课内容小结作业课堂练习。3第第6 6章章 函数与编译预处理函数与编译预处理 6.1 6.1 模块化程序设计与函数模块化程序设计与函数6.2 6.2 函数的定义与调用函数的定义与调用 6.3 6.3 函数的递归调用函数的递归调用6.4 6.4 变量作用域与存储方式变量作用域与存储方式6.5 6.5 内部函
3、数和外部函数内部函数和外部函数6.6 6.6 编译预处理编译预处理6.7 6.7 程序举例程序举例 56.4 6.4 变量作用域与存储方式变量作用域与存储方式1 1、变量的作用域、变量的作用域 变量定义变量定义的三个基的三个基本位置本位置函数内部函数内部局部局部变量量局部变量局部变量函数的参数函数的参数 形式参数形式参数函数外部函数外部全局全局变量量全局变量全局变量6#include stdio.hvoid fun()int a=3,b=4;printf(a=%d,b=%dn,a,b);main()int a=1,b=2;fun();printf(a=%d,b=%dn,a,b);输出结果:输出
4、结果:a=3,b=4a=1,b=2(1 1)局部变量局部变量7#include stdio.hint a,b;void f1()int c;c=a*b;a=b;b=c;printf(c=%dn,c);main()a=3;b=4;f1();printf(a=%d,b=%dn,a,b);输出结果:输出结果:c12a=4,b=12(2 2)全局变量全局变量8n将将同同一一源源文文件件中中全全局局变变量量的的作作用用域域向上扩展。向上扩展。n引用其他源文件中定义的全局变量。引用其他源文件中定义的全局变量。(3)外部变量的使用外部变量的使用声明格式如下:声明格式如下:extern extern 类型说明
5、符类型说明符 外部变量名外部变量名;9#include stdio.hint a;int fun(int x,int y)int d;extern int c;d=x*y*c;return d;main()a=2;extern int b;printf(%dn,fun(a,b);int b=3,c=4;运行结果运行结果:24101112对于全局变量有以下几点说明:对于全局变量有以下几点说明:n全局变量就是外部变量。全局变量就是外部变量。n同同一一源源文文件件中中,允允许许全全局局变变量量和和局局部部变变量量同同名名。在在局局部部变变量量的的作作用用域域内内,全全局局变量不起作用。变量不起作用。
6、n由于全局变量可在多个函数中使用,因由于全局变量可在多个函数中使用,因而降低了函数的独立性。而降低了函数的独立性。从模块化程序从模块化程序设计的观点来看这是不利的,因此尽量设计的观点来看这是不利的,因此尽量不要使用全局变量。不要使用全局变量。13#include stdio.hint a=3,b=5;max(int a,int b)int c;c=ab?a:b;return(c);main()int a=8;printf(max=%d,max(a,b);运行结果:运行结果:max=814n变量定义的完整格式为:变量定义的完整格式为:存储类别存储类别 数据类型数据类型 变量名变量名,变量名变量名
7、,2、变量的存储类别与生命期、变量的存储类别与生命期 存储方式存储方式生命期生命期变量的值变量的值静态存储静态存储编译时分配存分配存储单元并始元并始终占据占据该单元。元。一直存在。一直存在。动态存储动态存储使用使用时分配存分配存储单元,使用完立元,使用完立即即释放。放。时时而而存存在在时时而而消失。消失。15自动变量具有以下特点:自动变量具有以下特点:n作用域仅限于定义该变量的结构内。作用域仅限于定义该变量的结构内。n属于动态存储方式。属于动态存储方式。n不同的个体中(函数或复合语句内)允不同的个体中(函数或复合语句内)允许使用同名的自动变量而不会混淆。许使用同名的自动变量而不会混淆。(1)(
8、1)自动变量自动变量(auto)16#include stdio.hmain()int x=1;void prt();int x=3;prt();printf(1:x=%dn,x);printf(2:x=%dn,x);void prt()int x=5;printf(3:x=%dn,x);3:x=53:x=51:x=31:x=32:x=12:x=1x=1作用域作用域x=1作用域作用域x=3作用域作用域x=5作用域作用域17(2 2)静态变量静态变量(staticstatic)n静态变量的定义形式为:静态变量的定义形式为:staticstatic 类型说明类型说明 变量名变量名,变量名变量名,n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言程序设计教学课件 语言程序设计 教学 课件
限制150内