《C语言》课程资源_C语言_教学课件_18——函数——变量的作用域

程序设计基础(上) 张立红 13405330459(88028) QQ:2653453357 9#501
程序设计基础(上) 张立红 13405330459(88028) QQ:2653453357 9#501

第7章函数 本章知识点 7.1函数概述 7.2函数的定义和使用 7.3嵌套调用与递归调用 7.4变量与函数 7.5随机数函数
第7章 函数 本 章 知 识 点 7.1 函数概述 7.2 函数的定义和使用 7.3 嵌套调用与递归调用 7.4 变量与函数 7.5 随机数函数

7.4变量与函数-P131-.136 一、变量的作用域:变量有效作用的范围。 ■变量分类(按作用域) ◆局部变量(local variable) ,函数内定义,只在本函数内才能使用。 ~复合语句中定义,只在本复合语句范围内有效。 ◆全局变量(global variable) >函数外定义,从定义变量的位置开始到本源文件 结束
7.4 变量与函数-P131-136 一、变量的作用域:变量有效作用的范围。 ◼ 变量分类(按作用域) ◆ 局部变量(local variable) ➢ 函数内定义,只在本函数内才能使用。 ➢ 复合语句中定义,只在本复合语句范围内有效。 ◆ 全局变量(global variable) ➢ 函数外定义,从定义变量的位置开始到本源文件 结束

1.局部变量的作用域 ①double f1(inta) a、b、c仅在f1函 ②{intb,c; 数内有效 ③ ④ a、b类似于不同班 的同名学生 ⑤ int main() ⑥{inta,b; a、b仅在main函 ⑦ 数内有效 ⑧ return 0; ⑨}
① double f1( int a) ② { int b,c; ③ . ④ } ⑤ int main( ) ⑥ { int a,b; ⑦ . ⑧ return 0; ⑨ } a、b类似于不同班 的同名学生 a、b仅在main函 数内有效 a、b、c仅在f1函 数内有效 1. 局部变量的作用域

1.局部变量的作用域 a、b在main函 ① int main ( 数内有效 ② int a,b; ③ ■■■■■■ ④ int c; c仅在此复合 ⑤ 语句内有效 ⑥ ■■■■■■ ⑧
① int main ( ) ② { int a,b; ③ . ④ { int c; ⑤ . ⑥ } ⑦ . ⑧ } a、b在main函 数内有效 c 仅在此复合 语句内有效 1. 局部变量的作用域

关于局部变量的作用域,说明如下: (1)主函数main中定义的变量只能在主函数main中使用, 不能在其它函数中使用。 (2)主函数main中不能使用其它函数中定义的变量。因为主 函数也是一个函数,主函数main与其它函数是平行关系。 (3)形参变量是属于被调函数的局部变量,实参变量是属于 主调函数的局部变量。 (4)允许在不同的函数中使用相同的变量名,它们代表不同 的变量,分配不同的存储单元,互不干扰
关于局部变量的作用域,说明如下: (1)主函数main中定义的变量只能在主函数main中使用, 不能在其它函数中使用。 (2)主函数main中不能使用其它函数中定义的变量。因为主 函数也是一个函数,主函数main与其它函数是平行关系。 (3)形参变量是属于被调函数的局部变量,实参变量是属于 主调函数的局部变量。 (4)允许在不同的函数中使用相同的变量名,它们代表不同 的变量,分配不同的存储单元,互不干扰

例:局部变量的作用域。 ① #include ② int main() <1)k=10 ③ int i=2,j=3,k 2)k=5 ④ k=i+jj ⑤ {intk=10;∥复合语句内定义k ⑧ printf("(1)k=y%d小n",k); ⑦ ⑧ printf("(2)k=%dIn",k); ⑨ return 0;
例:局部变量的作用域。 ① #include ② int main() ③ { int i = 2, j = 3 , k ; ④ k = i + j; ⑤ { int k=10; // 复合语句内定义k ⑥ printf(" (1) k=%d\n",k); ⑦ } ⑧ printf(" (2) k=%d\n",k); ⑨ return 0; ⑩ }

2、全局变量的作用域 >全局变量:在函数之外定义的变量。 >全局变量可以为本程序中其它函数所共用。 >全局变量的有效范围:从定义变量的位置开始到 本程序结束
2、全局变量的作用域 ➢ 全局变量:在函数之外定义的变量。 ➢ 全局变量可以为本程序中其它函数所共用。 ➢ 全局变量的有效范围:从定义变量的位置开始到 本程序结束

① int p=1,q=5 ② p、q的有效范围 an5n”0■nn ③ char c1,c2; ④ a■a O■n ⑤ ⑥ int main ( ⑦ c1、c2的有效范围 ⑧ nnnaaa ⑨ return 0; ⑩
① int p=1,q=5 ② . ③ char c1,c2; ④ . ⑤ ⑥ int main ( ) ⑦ { ⑧ . ⑨ return 0; ⑩ } p、q的有效范围 c1、c2的有效范围

若全局变量与局部变量同名,结果? ① #include ② inta=3,b=5;1全局变量 ⑧ int max(int a,int b); b为全局变量 ④ int main() ⑤ int a=8; ⑥ printf("%din",max(a,b)); ⑦ return 0; ⑧ a为局部变量 ⑨ int max(int a,int b) ⑩ intc; ① c=a>b?a:b; a、b、c为局部变量 ② return c;
① #include ② int a=3,b=5; //全局变量 ③ int max(int a,int b); ④ int main() ⑤ { int a=8; ⑥ printf("%d\n",max(a,b)); ⑦ return 0; ⑧ } ⑨ int max(int a,int b) ⑩ { int c; ⑪ c=a>b?a:b; ⑫ return c; ⑬ } a为局部变量 b为全局变量 若全局变量与局部变量同名,结果? a、b、c为局部变量
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言》课程资源_C语言_教学课件_17——第7章 函数嵌套与递归.ppt
- 《C语言》课程资源_C语言_教学课件_16——函数的基本操作.ppt
- 《C语言》课程资源_课件ppt_8章字符串处理.ppt
- 《C语言》课程资源_课件ppt_7指针.ppt
- 《C语言》课程资源_课件ppt_6数组.ppt
- 《C语言》课程资源_课件ppt_5循环程序设计.ppt
- 《C语言》课程资源_课件ppt_4选择.ppt
- 《C语言》课程资源_课件ppt_2、3章.ppt
- 《C语言》课程资源_课件ppt_1章 C语言概述.ppt
- 《C语言》课程资源_课件ppt_13章位运算.ppt
- 《C语言》课程资源_课件ppt_12章结构体01.ppt
- 《C语言》课程资源_课件ppt_10章函数进一步讨论.ppt
- 《C语言》课程资源_C语言课件_第9、10章 函数.ppt
- 《C语言》课程资源_C语言课件_第6章 数组.ppt
- 《C语言》课程资源_C语言课件_第5章 循环结构.ppt
- 《C语言》课程资源_C语言课件_第4章 选择结构.ppt
- 《C语言》课程资源_C语言课件_第3章 顺序结构.ppt
- 《C语言》课程资源_C语言课件_第2章 基本的数据与运算.ppt
- 《C语言》课程资源_C语言课件_第1章 引论.ppt
- 《C语言》课程资源_C语言_数组3.ppt
- 《C语言》课程资源_C语言_教学课件_19——函数——随机数函数的应用.ppt
- 《C语言》课程资源_C语言_教学课件_20——程序设计基础1——数组——一维数组基本操作.ppt
- 《C语言》课程资源_C语言_教学课件_21——一维数组——排序应用.ppt
- 《C语言》课程资源_C语言_教学课件_22——程序设计基础1——第8章——数组——一维数组——查找逆置.ppt
- 《C语言》课程资源_C语言_教学课件_23——程序设计基础1——第8章——数组——一维数组——移位删除.ppt
- 《C语言》课程资源_C语言_教学课件_24——程序设计基础1——数组——二维数组.ppt
- 《C语言》课程资源_C语言_教学课件_25——程序设计基础1——数组——数组与函数.ppt
- 《C语言》课程资源_C语言_教学课件_26——指针——基础知识.ppt
- 《C语言》课程资源_C语言_教学课件_27——指针——指向数组.ppt
- 《C语言》课程资源_C语言_教学课件_28——字符数组——基本知识.ppt
- 《C语言》课程资源_C语言_教学课件_30——字符串数组与字符串函数.ppt
- 《C语言》课程资源_C语言_教学课件_理解——29——字符数组与指针.ppt
- 《C语言》课程资源_C语言_教学课件_01——C语言-导论、ACM操作方法、实验操作方法.ppt
- 《C语言》课程资源_C语言_教学课件_02——算法基础.ppt
- 《C语言》课程资源_C语言_教学课件_03——数据在计算机中的表示.ppt
- 《C语言》课程资源_C语言_教学课件_04——C语言——数据类型.ppt
- 《C语言》课程资源_C语言_教学课件_05——C语言的基本数据运算.ppt
- 《C语言》课程资源_C语言_教学课件_06——顺序结构程序设计.ppt
- 《C语言》课程资源_C语言_教学课件_07——C语言——输入输出格式控制.ppt
- 《C语言》课程资源_C语言_教学课件_08——C语言——关系运算、逻辑运算、if-分支结构.ppt
