第09章 结构体、共用体和枚举类型.ppt_第1页
第09章 结构体、共用体和枚举类型.ppt_第2页
第09章 结构体、共用体和枚举类型.ppt_第3页
第09章 结构体、共用体和枚举类型.ppt_第4页
第09章 结构体、共用体和枚举类型.ppt_第5页
已阅读5页,还剩30页未读, 继续免费阅读

下载本文档

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

文档简介

1、c高级语言程序设计,袁,北京邮电大学计算机学院,作业,以结构和位域两种方式存储学生身高、体重、成绩等信息,并按和排序,第9章结构、公共体和枚举类型,9.1结构定义和应用9.2位域* 9.3公共体定义和应用9.4枚举类型,9.1结构定义和应用,让每个学生的数据包括:姓名、字符数组、年龄、无符号整数分数、单精度浮点类型,如何存储解决方案:定义三个数组分别存储10名学生的姓名、年龄和年级,并用数组下标区分不同的学生:字符名称1020;/在10岁时存储10个学生的姓名;/年龄浮动分数10;/分数用namei、agei和scorei表示。不足:变量很多,不能直接反映同一学生数据之间的联系。改进:定义结构

2、类型并描述同一学生的多个数据:结构化学生/反映同一学生字符名称的数据之间的联系20;/名称整数;/年龄浮动分数;/结果;定义一组学生类型并存储10名学生的数据:学生s10/具有少量变量的结构可以将不同类型的数据组织成一个整体。9.1.1结构类型的定义,使用前需要定义。其定义格式:结构结构类型名称类型1成员1;类型2成员2;指示结构类型名称由标识符表示。成员可以是基本类型或导出类型的变量,存储类型不能指定为自动、注册或外部,但存储类型可以指定为静态。用分号“;”定义结构类型表示结束。结构类型是一种不占用内存的存储模型。只有当其变量被定义时,系统才根据这个存储模型为其变量分配相应的内存。9.1.2

3、结构类型变量的定义,将结构类型变量的格式定义为:结构类型名称变量列表;或结构类型名称变量列表;其中,结构类型名称是定义的类型;多个变量用逗号分隔;后一种格式与C兼容.例如学生s1、s2、s310或指导学生s1、s2、s310,学生类型变量s1的内存分配图,并根据学生类型的存储模型为其变量s1分配内存。学生类型的存储模型所需的内存字节:sizeof(student) s1变量的成员在内存中的顺序与其类型中的成员描述的顺序一致。名称占用20字节,年龄占用4字节,分数占用4字节,其他形式的结构类型变量定义,结构类型变量也可以在声明结构类型时定义。例如:结构日期为年、月、日;今天,昨天;另一个例子:s

4、truct /定义了一个未命名的结构类型int a;浮动b;x,y;未命名的结构类型不能在类型定义之外定义其变量。结构类型变量和结构变量的初始化:类似于数组的初始化,在花括号中,值根据结构成员的描述按顺序列出。例如:学生s1=珍妮,20,98;今天日期=2007,1,2;结构复杂,浮动真实,形象;c1=2.0f、3.0f、C2;9.1.3结构类型变量的使用。访问结构变量成员的格式是:结构变量。成员名称,其中 是成员访问运算符。例如,today.year表示今天访问结构变量的成员年份。相同结构类型的变量可以直接赋值。例如:结构天气双温,风;w1=7.5,3.2,w2=w1其中“w2=w1”相当于:w2 . temp=w1 . temp;w2 . wind=w1 . wind;结构类型变量不能直接输入/输出,其成员是否可以直接输入/输出取决于其成员的类型。如果它们是基本类型或

温馨提示

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

评论

0/150

提交评论