教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

C语言程序设计 课件 第九章(适于清华谭浩强版)

来源:网络收集 时间:2026-05-30
导读: C语言程序设计 课件 第九章(适于清华谭浩强版) 第9章 结构体等构造数据类型 9.1 9.2 9.3 9.4 9.5 9.6 9.7 结构体 结构体与数组 结构体与指针 结构体与函数 联合体 枚举 类型定义 C语言程序设计 课件 第九章(适于清华谭浩强版) 9.1 结构体结构体类型的数据由

C语言程序设计 课件 第九章(适于清华谭浩强版)

第9章 结构体等构造数据类型

9.1 9.2 9.3 9.4 9.5 9.6 9.7

结构体 结构体与数组 结构体与指针 结构体与函数 联合体 枚举 类型定义

C语言程序设计 课件 第九章(适于清华谭浩强版)

9.1 结构体结构体类型的数据由若干称为“成员” 的数据组成,每一个成员既可以是一个基 本数据类型的数据,也可以是另一个构造 类型的数据。 结构体实际上是C编译没有提供的数据 类型,可以由程序员根据实际情况来自己 构造的一种新的数据类型。

C语言程序设计 课件 第九章(适于清华谭浩强版)

9.1.1 结构体的说明 为了描述起来简单,我们要先定义一 个结构体类型:time。time是时间,10点 30分50秒就是一个时间数据,当然我们可 以用三个整型变量来表示一个时间, int hour; int minute; int second; 不能表示三个变量之间的逻辑关系。

C语言程序设计 课件 第九章(适于清华谭浩强版)

我们把时间说明为TIME ,而TIME 含有小时、分、秒三个成分,则TIME的结 构体说明是: struct TIME { int hour; int minute; int second; };

C语言程序设计 课件 第九章(适于清华谭浩强版)

其中struct 是关键字,TIME是结构体 的类型名,它实际上规定了一种新的复杂数 据类型。 于是在随后的程序中就可以使用TIME 定义结构体变量了。 struct TIME audit_begin;

C语言程序设计 课件 第九章(适于清华谭浩强版)

结构体的说明方式: struct 结构体名 { 成员表; }; 其中成员表可以由一个或几个成员组 成,要说明每个成员的类型和名称,注意 最后用分号结束。

C语言程序设计 课件 第九章(适于清华谭浩强版)

结构体变量的定义方式: struct 结构体名 结构体变量表; 结构体说明要注意下面几点: (1)结构体说明并不引起存储分配,结构体 变量的定义才引起存储分配。存储分配时, 通常按照各成员在结构体说明中出现的先 后顺序依次排列。结构体成员的数据类型 可以是C语言的基本数据类型,也可以 是数组和指针类型。

C语言程序设计 课件 第九章(适于清华谭浩强版)

(2) 结构体成员还可以是另一个结构体类型, 结构体说明可以嵌套。 struct OBJECT { struct TASK { long plan; long start; long finish; } ti,tj; int count; }; OBJECT中嵌套定义了另外一个结构体 TASK。

C语言程序设计 课件 第九章(适于清华谭浩强版)

结构体说明不允许递归,也就是不允 许在一个结构体说明中嵌套对自己的定义。 struct WRONG { struct WRONG a; /*错误 */ int count; };(3)

C语言程序设计 课件 第九章(适于清华谭浩强版)

9.1.2 结构体变量的定义 结构体变量定义有三种方法。 第一种方法就是上面用过的:先说明结构 体,再定义结构体变量。 第二种方法是在说明结构体类型的同时定 义结构体变量。 例如: struct TIME { int hour; int minute; int second; } audit_begin,audit_end;

C语言程序设计 课件 第九章(适于清华谭浩强版)

这种方法的语法格式是: struct 结构体名 { 成员表; } 结构体变量表;

C语言程序设计 课件 第九章(适于清华谭浩强版)

第三种方法是在说明结构体时直接定义 结构体变量,并且不用指定结构体名。 struct { int hour; int minute; int second; } audit_begin,audit_end; 这种形式的语法为: struct { 成员表; } 结构体变量表;

C语言程序设计 课件 第九章(适于清华谭浩强版)

不能混淆结构体名和结构体变量这两 个概念。结构体名实际上

标识了程序员定 义的一种新的数据类型,编译系统不可能 为结构体名分配内存空间。只有当变量被 说明为这种由程序员自己定义的数据类型 的结构体时,编译系统才会为结构体变量 分配存储空间。在不引起混淆的情况下, 结构体变量可以简称为结构体。

C语言程序设计 课件 第九章(适于清华谭浩强版)

9.1.3 结构体成员的引用 C语言中对结构体变量的使用是通过 对其成员的引用来实现的。一般不能对 结构体变量进行整体的引用。 引用的方法: 结构体变量名.成员名 符号“.”是依据结构体变量名存取结 构体成员的运算符。

C语言程序设计 课件 第九章(适于清华谭浩强版)

例9.1 用符号“.”引用结构体变量的成员。 #include "stdio.h" void main() { struct TIME { int hour; int minute; int second; }; struct TIME audit_begin;

C语言程序设计 课件 第九章(适于清华谭浩强版)

audit_begin.hour=8; /*为audit_begin的每个成员赋值 */ audit_begin.minute=30; audit_begin.second=00; printf("\n audition time is \ %02d:%02d:%02d",\ audit_begin.hour,audit_begin.minute,\ audit_begin.second);}

…… 此处隐藏:727字,全部文档内容请下载后查看。喜欢就下载吧 ……
C语言程序设计 课件 第九章(适于清华谭浩强版).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1812752.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)