内容正文:
7.3 结构体变量的引用
一、教学目标
1.理解结构体变量的引用。
2.掌握结构体变量的初始化。
3.理解同类结构体变量间的赋值方式
二、重点难点
1.重点:(1)理解结构体变量的引用 (2)掌握结构体变量的初始化
2.难点:理解同类结构体变量间的赋值方式
三、教学时间
本任务教学,课内计划1课时。
4、
学科网(北京)股份有限公司精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
5、 教学过程
教学过程
教学环节
教师活动
学生活动
设计意图
导入新课
1.问题1:
结构体有哪三种定义方法?
先定义结构体类型,再定义结构体变量
在定义结构体类型的同时定义结构体变量
直接定义结构体变量
讨论、思考、观察
通过问题引入,激发学生的学习兴趣,思考不同的上节课知识,教师引导,引出今天的学习主题
讲授新课
引用结构体变量
定义并初始化结构体变量的目的是使用结构体变量中的成员。在C语言中,引用结构体变量中一个成员的方式如下所示:
结构体变量名.成员名;
1、 例如,下列的语句用于引用结构体变量stu1中num成员:
stu1.num;
为了帮助大家更好地掌握结构体变量的使用,接下来通过一个案例来输出结构体变量中所有成员的值,如例1所示。
#include <stdio.h>
#include <stdlib.h>
struct Student
{
char name[50];
int age;
};
void main()
{
struct Student s = {"Zhang San", 23};
printf("%s %d
", s.name, s.age);
}
运行结果如图一所示。
从图一中可以看出,结构体变量中成员name和age的值被输出了。
由于结构体变量中存储的是一组类型不同的数据,因此为结构体变量初始化的过程,其实就是为结构体中各个成员初始化的过程。根据结构体变量定义方式的不同,结构体变量初始化的方式可分为两种。
1、在定义结构体类型和结构体变量的同时,对结构体变量初始化,具体示例如下:
struct Student
{
int num;
char name[10];
char sex;
} stu = {20140101, "Zhang San", 'M'};
上述代码在定义结构体变量stu的同时,就对其中的成员进行了初始化。
2、定义好结构体类型后,对结构体变量初始化,具体示例如下:
struct Student
{
int num;
char name[10];
char sex;
};
struct Student stu = {20140101, "Zhang San", 'M'};
在上述代码中,首先定义了一个结构体类型Student,然后在定义结构体变量时,为其中的成员进行初始化。
同类型结构体变量间赋值的格式是:
结构体变量1=结构体变量2;
例如定义两个同属于类型 struet date 的变量d1和d2,先对变量d1赋值,再将d1赋给变量d2
#incelude <stdio.h>
#include <conio.h>
typedef struct date
{ int mm,dd,yy;} Date; //定义日期类型Date
main()
{ Date d1,d2;
d1.mm= 10;
d1.dd=1;
d1.yy= 2019;
d2 =d1;
print(" %d - %d - %d
", d2 mm, d2.dd, d2.yy);
getch();
}
运行结果如图所示。
说明:d1、d2 两个变量都属于struet date 类型,它们之间可以进行相互赋值。语句“d2=d1;"等价于下列3条语句:
d2.mm = d1.mm;
d2.dd = d1.dd;
d2.yy=d1.yy;
学生思考、理解
如何引用结构体变量
理解.在结构体中的关键作用
理解结构体变量初始化过程
思考
理解并识记两种结构体变量方式
结合例题讲解
教师讲解,以及便于学生理解和掌握。
教师讲解
教师讲解加以引导
教师讲解
教师讲解,学生加以理解
课堂小结
结构体变量的引用、初始化。
同类型结构体变量间的赋值
学生回答
利用问题形式进行总结
作业设计
1.完成同步练习题。
2.预习7.3
$