6.2变量(教案) -《C语言程序与设计》同步教学(高教版.第五版)(2)

| 6页
| 157人阅读
| 14人下载
普通

学科网 zxxk.com学科网 zxxk.com

学科网 zxxk.com学科网 zxxk.com

第  周                    课时数:   节讲授

课题

变量

课型

讲授

教学

目的

1.局部变量

2.全局变量

3.变量的存储类别

4.静态局部变量

5.const常量

6.寄存器变量

7.外部变量

8.extern关键字示例

重点

难点

重点: C语言的特点

难点: C 程序上机步骤

教具

准备

多媒体、计算机、DevC++6.0软件

教学

反思

学生对编程有一定的兴趣,又有一定畏难心理,要鼓励学生不怕难,多编写程序。

教学内容

教法设计

课前

准备

 

 

课程

导入

 

 

 

讲授

新课

 

 

 

 

 

 

 

 

 

 

 

 

 

 

德育三分钟

1、  常规检查

2、  上课纪律强调

 

C语言中的主要变量类型‌?

 

 

 

 

一、局部变量

1.局部变量是在函数内部声明的变量,这包括函数的形参。它们仅在包含该变量声明的函数中才起作用,在该函数外不能使用这些变量。

2.局部变量示例

 void local_value( )

 {

   int a = 1, b = 2;

   printf( “%d%d” , a, b);

 }

 main( )

 {

   int a = 5;

   float b = 2.5;

   printf( “%d%f” , a, b );

 }

3.适用于函数内部使用的数据,不会污染全局命名空间

 

page number 0

1

 

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


学科网 zxxk.com学科网 zxxk.com

学科网 zxxk.com学科网 zxxk.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.void local_value( )

 {

   int a = 1, b = 2;

   printf( “%d%d” , a, b);

 }

 main( )

 {

   int a = 5;

   float b = 2.5;

   printf( “%d%f” , a, b );

 }

由于局部变量只在本函数内有效,因此可以在程序的各个部分使用同名变量,同样,在参数传递时,实参也允许和形参同名。

 

 

二、全局变量

        1.全局变量是在代码文件中定义的全局变量,在整个源文件中皆可访问。如果要在其他源文件中使用该变量,需要使用extern关键字引用。

全局变量的空间开辟在全局变量区,全局变量的生命周期同程序的生命周期相同。

 

2.int a = 5, b =10;  // 全局变量 

 void modify ( )

 { a++;

   b--;

   printf( “%d,%d \n” , a, b );

 }

 main( )

 {  modify( );

   printf( “%d,%d\n” , a, b );

 }

 

page number 1

1

 

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


学科网 zxxk.com学科网 zxxk.com

学科网 zxxk.com学科网 zxxk.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

三、 变量的存储类别

1.静态存储方式

动态存储方式

2.自动变量
函数中的局部变量如果未加static声明就属于自动变量。这包括函数内的局部变量、函数形参和复合语句中定义的变量。

自动变量是动态分配内存的,其值存储在动态存储区中。调用函数时为自动变量分配内存,调用结束释放内存。也可为自动变量添加auto关键字声明。

  1. 静态局部变量

局部变量使用static关键字声明,就属于 “静态局部变量” 。这种变量属于静态存储类型,在静态存储区分配内存。

void sub( )

 {  int a = 0;

   static int  b = 0;

   a++;  b++;

   printf( “%d,%d \n” , a, b );

 }

 main( )

 {  int i;

   for( i = 1; i <= 3; i++)

     sub( );

 }

 

四、const常量

 

      1.const变量,为只读变量,在编码过程中只可对该变量进行读,不可修改该变量的值。该变量会被存放在常量区,生命周期伴随程序的整个生命周期。

。

五、寄存器变量

为了提高程序的性能,C语言允许将变量存储在CPU的寄存器中。

这种存储类别的变量称为 “寄存器变量” ,可以使用register关键字声明。

只有局部变量和形式参数才允许声明为寄存器变量。

 

六、外部变量(全局变量)

1.是在函数外部定义的,其作用域是从定义处开始到文件结束。系统对外部变量采用静态存储方式,即编译时分配内存,程序运行结束释放。

2.同静态变量类似,未显式初始化的外部变量初值是0。

3.如果在外部变量定义处之前需要使用该变量,则需要在使用之前使用extern关键字声明该变量,以表示该变量是一个已定义过的外部变

 

page number 2

1

 

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。