数据结构与算法教案-第一章1.5结构体与指针.doc

数据结构与算法教案-第一章1.5结构体与指针.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构与算法 1.5 C语言描述数据结构与算法 本节概述 对本节进行适当的扩展,使其成为数据结构算法的第一堂课。 本节主要复习C语言中 typedef命令、结构体、指针、动态分配空间几部分内容。 首先用实例讲解或者说复习结构体的概念。 然后讲解typedef的定义及其与define命令的相似及区别。 讲解malloc函数的用法。 最后举实例讲解结构体和函数共同构成数据类型。 本节是本书的预习章节,占有极其重要的作用。 教学目标 使学生重识C语言。回顾或者说掌握上学期的结构体、指针等概念。 通过上机训练,使学生对结构体有大致的了解,能够动手写出简单结构体的例子。 为学习数据结构算法打下良好的基础。 教学重点 结构体与函数的配合使用。 - 操作符的用法。 Malloc函数的作用。 教学学时: 课堂教学(2课时:70分钟)+实验教学(2课时) 教学环境 本课程采用多媒体教学,要求多媒体教室(理论课)和实验室(实验课)教师用计算机都安装VC++6.0。实验室还要求具备稳定的基于局域网的多媒体教学环境,学生每人一台计算机。 教学过程 教学内容 教学方法 教学提示 讲授: 我们在C语言中已学习过结构体的相关内容,下面让我们通过一段代码复习以下: (回顾) 这段代码需要大家注意的几个方面: 1 结构体类型与结构体变量的联系与区别。 2 结构体变量访问成员的方法。 3 char * 是一种指针类型,代表字符串。 4 结构体中的成员变量仍可以为结构体类型。 清楚之后,我们可以看下课本1_5_3的例子。 5 其中一个typedef关键字究竟代表什么呢? 开启VC6.0环境,打开结构体例子:指针与结构体.c typedef struct date int year; int month; int day; Date; Typedef struct student int number; char *name; Date birthday; float Score[8]; Student; main Student s1,s2; Student *p1,*p2; s1.number 1; s2.number 2; s1.name Tom; s2.name Jack; sp1- name Hello; sp1- number 3; 结构体指针及其- 符号在本阶段无需进行解释,甚至可以在这个时段去掉相关的内容。 本段授课时间要在10分钟左右。 我们接下来通过其它的例子重点攻克typedef。 typedef的作用是给已经存在的类型起一个别名: 例如: typedef int INT; 这条语句执行后,INT与int都表示整型。 typedef与define有什么区别? 讲解 typedef和struct 的定义可以合写,当然,也可以分两句进行。 本段的讲授时间控制10分钟。 Vc环境中打开 typedef的解释.c 答,形式上的不同如下: define前面要加#;define结束不能加分号;define的第一个参数是出现在文本中的内容,而第二个参数是实际内容,typedef正好相反。 实质上的不同: typedef是定义类型,而define是字面替代 define是编译预处理命令,而typedef是关键字 讲授: 下面我们来复习指针、结构体指针的相关内容,并引出本书的主人公操作符 - 请大家回顾或者说注意下面几个方面: 指针操作内容的操作符是什么 * 和 运算符各代表什么意义 结构体成员中,如果有指针,要如何处理? 我们可以让主人公上场了 讲解指针与结构体.c中有关指针的相关内容。 本时段是重点。 讲解时间- 上场前10分钟,- 登场至少10分钟。 - 登场要解释和 *p .的共同点,也要给学生复习 *p .与 *p.的区别。 最终,举一个a- b- c的例子结束本时段。 讲授: 下面我们慢慢引入非常常见但是不好理解的函数malloc。 起因:指针在使用之前必须初始化。而目前而言大家所知道的初始化方式就是定义一个普通变量(或结构体变量),然后让指针指向它,这么做得最终使指针沦为了别名系统。能不能不用普通变量的方式而申请到指针的空间呢?可以的,这就是malloc函数的作用。下面举例。 课本15页代码 P15代码并不好讲,它还涉及到不变字符串的问题,如果可能的话,这些问题一起讲。 时间10分钟左右。 讲授: 最后,我们现场写一个结构体的例子来结束我们这次复习课。 二伟数组课上不讲,大家自己看书。 打开VC6.0,现场写一个实际例子。仍然以指针与结构体.c为模版 控制时间15分钟 总结:下面我们对今天的课程重要的地方做一些精炼与总结: Typedef可以定义新的类型,它与define既有联系也有

文档评论(0)

资料 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档