C语言项目开发基础与实战-教案 第40讲 8结构与结构变量的声明与定义_第1页
C语言项目开发基础与实战-教案 第40讲 8结构与结构变量的声明与定义_第2页
C语言项目开发基础与实战-教案 第40讲 8结构与结构变量的声明与定义_第3页
C语言项目开发基础与实战-教案 第40讲 8结构与结构变量的声明与定义_第4页
C语言项目开发基础与实战-教案 第40讲 8结构与结构变量的声明与定义_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第页学院教师课时授课教案 编号:40授课日期授课班级授课学时2课型理论课题:§8结构与结构变量的声明与定义教学目标:本讲通过对购物车程序中的用户、商品及订单数据存储结构的介绍,使学生能够了解结构、联合及枚举的功能、用途,具体的目标如下:1.了解结构、联合及枚举的适用环境;2.了解结构数组的用途;3.了解结构与面向对象程序开发中的类之间的联系及区别。重点与难点:重点:结构、联合及枚举等复杂数据类型的功能与用途。难点:结构数组的适用环境,结构与类,结构变量与对象的联系与区别。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第40讲教学环节教学内容教学组织与教学方法组织教学:引入:新课:重点重点扩展1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。在描述一些较为复杂的对象时,无法单独用以前所学的简单的数据类型来描述,如果用多个简单变量来描述的话,也不方便管理。§8.1结构的引入一、简单数据结构(基础数据类型)int:整型数值float:浮点型数值(7位有效位数字)double:双精度浮点型数值(15位有效数字)char:字符型(只能存储1个英文字符)补充:java等现代语言拥有string类型,专门处理字符串。引入:如何界定人类?或如何描述一个人?结论:用简单数据类型无法方便的描述复杂的现实物体。二、复杂数据结构(结构、联合及枚举)1.结构(struct)用途:描述各种不同类型组合而成的数据。示例:structperson{charname[9];charidNo[19];intage;floatheigh;intgender;//0–female,1--male};说明:这是一个新定义(自定义)的数据类型;结构每个属性称为结构成员,分别占用独立存储空间,总共占用存储空间:9+19+2+4+2=36B(按标准C的规定,整型变量算2个字节)。2.联合(union)用途:各种互斥数据的组合数据类型,且共享空间。示例:unionXuanXiuKeChengJi{//选修课intcourse1;intcourse2;intcourse3;intcourse4;}说明:这是一个新定义(自定义)的数据类型;联合的每个属性称为联合成员,共享存储空间,总共占用存储空间:2B(按标准C的规定,整型变量算2个字节)。3.枚举(enum)用途:取值有限的数值。示例:enumgender{female,male};enumnationality{han,hui,zang,…..};三、结构与类,结构变量与对象的联系与区别1.JAVA类publicclassDog{Stringname;intage;voidbark(){//汪汪叫System.out.println("汪汪,不要过来");}voidhungry(){//饥饿System.out.println("主人,我饿了");}}2.结构变量与类的实例structpersonzhangsan;DogmyErHa;就上讲课的主要内容及相关重难点作简要回顾与总结。用日常的登记表格来引入,如何描述一个人,强调的属性和方法(比如擅长的事情)。强调与字符串数值的差异,提问能否存储汉字?讨论(姓名,身份证号,性别,年龄,身高等属性)与struct类似,但更节约空间。讨论:性别用整型会出现的问题。强调:是类型,非变量,并与系统定义的4种基础类型做比较。强调:在面向对象中,结构成员即属性。开设4门选修课,但学生只选择一门,只有一个成绩。目的:尽量减少用户输入出错的概率。强调:增加了方法。重点重点难点重点3.结构与类的联系与区别⑴都是复杂型数据结构⑵结构成员可以为简单型或复杂型数据结构,但不能包括函数;类成员可以为简单型或复杂型数据结构,可以包括函数。§8.2结构一、结构类型的概念1.结构(structure)的概念是一种允许程序员把一些数据分量聚合成一个整体的数据类型。2.结构成员或结构分量的概念一个结构中包含的每个数据分量都有名字,这些数据分量称为结构成员或者结构分量,结构成员可以是C语言中的任意数据类型。3.结构与数组的区别数组中所有元素的数据类型必须是相同的,而结构中各成员的数据类型可以不同。二、结构的声明1.格式struct结构名{类型名结构成员名1;类型名结构成员名2;……类型名结构成员名n;};2.说明 struct:定义结构的类型的关键字 结构名:自行命名的标识符 结构定义整体用“{}”标识范围 结构定义用“;”表示结束三、结构变量的定义与初始化1.单独定义先定义一个新的结构类型,再定义这种结构类型的变量。2.混合定义在定义新的结构类型时,同时定义这种结构类型的变量。structstudent //学生信息结构定义{ intnum; //学号 charname[10]; //姓名 intcomputer; //计算课程成绩 intenglish; //英语课程成绩 intmath; //高数课程成绩}stu1,stu2;3.无名结构struct{charname[21];intage;chargender[3];}myErHa;注:只能定义一次变量,用于临时结构变量。必须在定义完成后,立即声明其结构变量。4.结构变量的初始化structurestudentstu1={101,“zhang”,78,87,85};注:各项数据用“,”分隔; 各项数据的顺序与类型需要与结构成员一致。四、结构变量的使用1.结构变量成员的引用结构变量名.结构成员名stu1.num=101;strcpy(,“zhang”);2.结构变量的整体赋值stu2=stu1;注:stu1与stu2的类型必须相同。定义结构时可以嵌套术语:方法。参见P212声明结构类型推荐,即上文中的person结构定义。讨论两种方法的适用范围。强调:在初始化时可用“=”给字符串变量直接赋值,并演示二者的区别。提问:给字符串正常赋值的函数?

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲结构与结构变量的声明与调用的相关知识。教学反思、总结:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论